FOUNDRY-SN-SWITCH-GROUP-MIB DEFINITIONS ::= BEGIN


-- Foundry SnSwitch Group MIB Release 2.0.0
-- Revision 0 08/18/96

-- Copyright 1996-97 Foundry Networks, Inc.
-- All rights reserved.
-- This Foundry Networks SNMP Management Information Base Specification
-- (Specification) embodies Foundry Networks' confidential and
-- proprietary intellectual property. Foundry Networks retains all
-- title and ownership in the Specification, including any
-- revisions.

-- This Specification is supplied "AS IS," and Foundry Networks makes
-- no warranty, either express or implied, as to the use,
-- operation, condition, or performance of the Specification.

-- SECTION 1: Top Level Definitions


-- Imports

IMPORTS
        Counter, TimeTicks, IpAddress, Gauge
                FROM RFC1155-SMI
        InterfaceIndex
                FROM IF-MIB
        Unsigned32, Gauge32, Counter32, Counter64
                FROM SNMPv2-SMI
        OBJECT-TYPE
                FROM RFC-1212
        snSwitch
                FROM FOUNDRY-SN-ROOT-MIB;

                -- textual conventions

          DisplayString ::=
              OCTET STRING
          -- This data type is used to model textual information taken
          -- from the NVT ASCII character set.  By convention, objects
          -- with this syntax are declared as having
          --
          --      SIZE (0..255)

          PhysAddress ::=
              OCTET STRING
          -- This data type is used to model media addresses.  For many
          -- types of media, this will be in a binary representation.
          -- For example, an ethernet address would be represented as
          -- a string of 6 octets.

          MacAddress ::=
              OCTET STRING (SIZE(6))
          -- This data type is used to model media addresses.  For many
          -- types of media, this will be in a binary representation.
          -- For example, an ethernet address would be represented as
          -- a string of 6 octets.

      BridgeId ::= OCTET STRING (SIZE(8))  
      -- the Bridge-Identifier as used in the Spanning Tree

      Timeout ::= INTEGER -- a STP timer in units of 1/100 seconds

          PortMask ::=
                  INTEGER
          -- This data type is used to model port bitmask.  The 
          -- maximum of ports are 32.  

      InterfaceId ::= OBJECT IDENTIFIER
          -- This data type is used to specify an interface ID.
          -- The first object identifier is port type, and the
          -- format of the rest of the object identifiers depend
          -- on the port type.
          --
          -- ethernet(1), format: type.slot.port
          --   e.g. 1.3.6 is port ethernet 3/6
          --
          -- pos(2), format: type.slot.port
          --   e.g. 2.10.1 is port pos 10/1
          --
          -- atm(3), format: type.slot.port
          --   e.g. 3.8.2 is port atm 8/2
          --
          -- virtual router interface(4), format: type.ve
          --   e.g. 4.9 is port ve 9
          --
          -- loopback(5), format: type.lb
          --   e.g. 5.7 is port loopback 7
          --
          -- gre tunnel(6), format: type.tn, not supported
          --
          -- subinterface(7), format: type.slot.port.subInterface
          --   e.g. 7.3.2.4 is port atm 3/2.4
          --
          -- mpls tunnel(8), format: type.tn
          --   e.g. 8.3 is port tunnel 3
          --
          -- pvc(9), format: type.slot.port.subInterface.vpi.vci
          --   e.g. 9.3.1.2.1.2 is port atm 3/1.2.1.2
          --
          -- virtual management(10), format: type
          --   e.g. 10 is the virtual management interface        

-- Groups

snSwInfo                    OBJECT IDENTIFIER ::= { snSwitch 1 }
snVLanInfo                              OBJECT IDENTIFIER ::= { snSwitch 2 }
snSwPortInfo                    OBJECT IDENTIFIER ::= { snSwitch 3 }
snFdbInfo                               OBJECT IDENTIFIER ::= { snSwitch 4 }
snPortStpInfo                   OBJECT IDENTIFIER ::= { snSwitch 5 }
snTrunkInfo                             OBJECT IDENTIFIER ::= { snSwitch 6 }
snSwSummary                             OBJECT IDENTIFIER ::= { snSwitch 7 }
snDhcpGatewayListInfo   OBJECT IDENTIFIER ::= { snSwitch 8 }
snDnsInfo                               OBJECT IDENTIFIER ::= { snSwitch 9 }
snMacFilter                             OBJECT IDENTIFIER ::= { snSwitch 10 }
snNTP                                   OBJECT IDENTIFIER ::= { snSwitch 11 }
snRadius                                OBJECT IDENTIFIER ::= { snSwitch 12 }
snTacacs                                OBJECT IDENTIFIER ::= { snSwitch 13 }
snQos                                   OBJECT IDENTIFIER ::= { snSwitch 14 }
snAAA                                   OBJECT IDENTIFIER ::= { snSwitch 15 }
snCAR                                   OBJECT IDENTIFIER ::= { snSwitch 16 }
snVLanCAR                               OBJECT IDENTIFIER ::= { snSwitch 17 }
snNetFlow                               OBJECT IDENTIFIER ::= { snSwitch 18 }
snSFlow                                 OBJECT IDENTIFIER ::= { snSwitch 19 }
snFDP                               OBJECT IDENTIFIER ::= { snSwitch 20 }
snVsrp                                  OBJECT IDENTIFIER ::= { snSwitch 21 }
snArpInfo                               OBJECT IDENTIFIER ::= { snSwitch 22 }
snWireless                              OBJECT IDENTIFIER ::= { snSwitch 23 }
snMac                                   OBJECT IDENTIFIER ::= { snSwitch 24 }
snPortMonitor                   OBJECT IDENTIFIER ::= { snSwitch 25 }
snSSH                                   OBJECT IDENTIFIER ::= { snSwitch 26 }
snSSL                                   OBJECT IDENTIFIER ::= { snSwitch 27 }
snMacAuth                               OBJECT IDENTIFIER ::= { snSwitch 28 }
snMetroRing                             OBJECT IDENTIFIER ::= { snSwitch 29 }
snMacVlan                               OBJECT IDENTIFIER ::= { snSwitch 30 }

-- SECTION 2: Switch Group Configuration MIBs


snSwGroupOperMode OBJECT-TYPE
        SYNTAX  INTEGER {
                noVLan(1),
            vlanByPort(2)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "noVLan(1) represents all switch ports with no virtual 
                 LAN by port (no Port VLAN), and with no tag assigned.
                 vlanByPort(2) represents all switch ports with Basic 
                 VLAN (layer2 Switch). "
        ::= { snSwInfo 1 }

snSwGroupIpL3SwMode OBJECT-TYPE
        SYNTAX  INTEGER {
                disabled(0),             
                enabled(1)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The Switch Group is configured with the Layer3
                 IP Switch mode either enabled or disabled and the
                 default is disabled mode.
                 enabled(1)...........activate Layer3 IP Switch
                 disabled(0)..........disable Layer3 IP Switch"  
        ::= { snSwInfo 2 }


snSwGroupIpMcastMode OBJECT-TYPE
        SYNTAX  INTEGER {
                disabled(0),
                enabled(1)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The Switch Group is configured with the IP Multicast
                 pruning mode either enabled or disabled and the
                 default is disabled mode.
                 enabled(1)...........activate IP Multicast pruning
                 disabled(0)..........no IP Multicast pruning"
        ::= { snSwInfo 3 }


snSwGroupDefaultCfgMode OBJECT-TYPE
        SYNTAX  INTEGER {
                default(1),
                nonDefault(2)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The Switch Group is configured with the Default
                 configuration. If the default configuration gets
                 overwritten, the state will change to non-default.
                 default(1)...........default configuration
                 nonDefault(2)..........non default configuration"
        ::= { snSwInfo 4 }


snSwGroupSwitchAgeTime OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The Switch Age time is 180sec by default.
                 The configured range is 10 to 10,000sec.  The time
                 represents the time span to age out an MAC Address
                 entry."
        ::= { snSwInfo 5 }



snVLanGroupVlanCurEntry OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The current total entry number of VLANs are configured." 
        ::= { snSwInfo 6 }


snVLanGroupSetAllVLan OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The value of this object is the VLanIndex of a particalur
                 entry in snVLanByPortCfgTable (snVLanByPortCfgVLanId).  
                 All the attributes of that row of table except PortMask
                 will be used to set the same attributes for the 
                 entire VLan group. VLanId and PortMask must be set for 
                 that particular entry prior to setting this object.
                 Switch software will base on that VLAN information
                 to set the entire VLAN.   
                 Note: All the intended attributes of the given 
                 row of the table (given VLAN) must be set prior
                 setting this object.  When this object is set,
                 Set-All-VLAN action will take place simultaneously.
                 The previous setting will be overwritten by the 
                 new one."
        ::= { snSwInfo 7 }


snSwPortSetAll OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The value of this object is the index number of the
                 snSwPortInfoTable (snSwPortInfoPortIndex).  
                 snSwPortInfoMonitorMode, snSwPortInfoTagMode, 
                 snSwPortInfoChnMode, snSwPortInfoSpeed,
                 snSwPortInfoAdminStatus are all the
                 read-write attributes of that row of table.
                 They will be used to set the same attributes for
                 all the ports in the system.
                 Note: prior setting this object, all the intended 
                 attributes of the given row of the table must be set.  
                 Otherwise, the current data of the row will be used to 
                 set the entire port-table. The previous setting will
                 be overwritten by the new one." 
        ::= { snSwInfo 8 }



snFdbTableCurEntry OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The current total entry number of FDB are configured." 
        ::= { snSwInfo 9 }


snFdbTableStationFlush OBJECT-TYPE
        SYNTAX  INTEGER {
            normal(1),
        error(2),
        flush(3),
        flushing(4)
        }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The following values of the flush state
                 can only be read:
                  normal(1)... normal state
                  error(2)... operation failed
                  flushing(4)... in process

                The following value can be written:
                  flush(3).....do flush 

                The agent will return a response even before the flush is done.
                And the read value will be flushing until flush is done.
                And the flush request will be rejected until error or normal."
        ::= { snSwInfo 10 }


snPortStpSetAll OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The value of this object is 1 which means invoking
                 Port STP Set-all command.  The snPortStpPriority, 
                 snPortStpPathCost, the read-write STP related 
                 attributes of the first row of table will be used 
                 to set the same attributes for all the ports in the 
                 system. 
                 Note: prior setting this object, all the intended 
                 attributes of the given row of the table must be set.  
                 Otherwise, the current data of the row will be used to 
                 set the entire port-table. The previous setting will
                 be overwritten by the new one." 
        ::= { snSwInfo 11 }


snSwProbePortNum OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "A chassis switch probe port is operated as a traffic analyzer
                 port and only one port can be assigned in the chassis.
                 The bit 0 to bit 7: port number. 
                 The bit 8 to bit 11: slot number.
                 A stackable switch is only assigned with one probe port as a 
                 traffic analyzer."
        ::= { snSwInfo 12 }


snSw8021qTagMode OBJECT-TYPE
        SYNTAX  INTEGER {
                disabled(0),
                enabled(1)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The Switch Group is configured with the IEEE802.1q
                 Tagging mode either enabled or disabled and the
                 default is disabled mode.
                 enabled(1)...........activate IEEE802.1q Tagging mode.
                 disabled(0)..........no IEEE802.1q Tagging."
        ::= { snSwInfo 13 }


snSwGlobalStpMode OBJECT-TYPE
        SYNTAX  INTEGER {
                disabled(0),
                enabled(1)       
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Spanning Tree System Global Mode in the Switch Group 
                 can be set either enabled or disabled and the default is 
                 enabled mode.
                 enabled(1)...........activate Spanning Tree
                 disabled(0)..........no Spanning Tree"
        ::= { snSwInfo 14 }


snSwIpMcastQuerierMode OBJECT-TYPE
        SYNTAX  INTEGER {
                querier(1),
                nonQuerier(2)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The IP Multicast pruning mode is configured either 
                 Non-Querier or Querier mode and the default is 
                 querier mode.
                 querier(1)...........when prunning traffic locally 
                                      within the VLAN.
                 nonQuerier(2)........when running with a multicast 
                                      capable router in the network."
        ::= { snSwInfo 15 }

snSwViolatorPortNumber OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The port number of the switch or router that received
                 a violator packet. It is included in the locked
                 address violation trap.
                 The bit 0 to bit 7: port number. 
                 The bit 8 to bit 11: slot number (slot for chassis only)."
        ::= { snSwInfo 17 }

snSwViolatorMacAddress OBJECT-TYPE
    SYNTAX  MacAddress
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The source address of the violator packet received
                 by the switch or router. It is included in the locked
                 address violation trap."
        ::= { snSwInfo 18 }

snVLanGroupVlanMaxEntry OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The maximum number of VLAN entries are allowed to configure."
        ::= { snSwInfo 19 }

snSwEosBufferSize OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "A specific buffer size for all the different EOS buffers."
        ::= { snSwInfo 20 }

snVLanByPortEntrySize OBJECT-TYPE
        SYNTAX  INTEGER 
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                 "The size of each VLAN table entry."
        ::= { snSwInfo 21 }

snSwPortEntrySize OBJECT-TYPE
        SYNTAX  INTEGER 
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                 "The size of each port table entry."
        ::= { snSwInfo 22 }

snFdbStationEntrySize OBJECT-TYPE
        SYNTAX  INTEGER 
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                 "The size of each Fdb station table entry."
        ::= { snSwInfo 23 }

snPortStpEntrySize OBJECT-TYPE
        SYNTAX  INTEGER 
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                 "The size of each port stp table entry."
        ::= { snSwInfo 24 }

snSwEnableBridgeNewRootTrap OBJECT-TYPE
        SYNTAX  INTEGER { disabled(0), enabled(1) }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Indicates whether the SNMP agent process is
                permitted to generate bridge new root traps."
    DEFVAL { enabled }
        ::= { snSwInfo 25 }

snSwEnableBridgeTopoChangeTrap OBJECT-TYPE
        SYNTAX  INTEGER { disabled(0), enabled(1) }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Indicates whether the SNMP agent process is
                permitted to generate bridge topology change
                traps."
    DEFVAL { enabled }
        ::= { snSwInfo 26 }

snSwEnableLockedAddrViolationTrap OBJECT-TYPE
        SYNTAX  INTEGER { disabled(0), enabled(1) }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Indicates whether the SNMP agent process is
                permitted to generate locked address violation
                traps."
    DEFVAL { enabled }
        ::= { snSwInfo 27 }

snSwIpxL3SwMode OBJECT-TYPE
        SYNTAX  INTEGER {
                disabled(0),             
                enabled(1)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The Switch Group is configured with the Layer3
                 IPX Switch mode either enabled or disabled and 
                 the default is disabled mode.
                 enabled(1)...........activate Layer3 Switch
                 disabled(0)..........disable Layer3 Switch"  
        ::= { snSwInfo 28 }

snVLanByIpSubnetMaxSubnets OBJECT-TYPE
        SYNTAX  INTEGER 
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The maximum number of subnets for each IP VLAN."
        ::= { snSwInfo 29 }

snVLanByIpxNetMaxNetworks OBJECT-TYPE
        SYNTAX  INTEGER 
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The maximum number of networks for each IPX VLAN."
        ::= { snSwInfo 30 }

snSwProtocolVLanMode OBJECT-TYPE
        SYNTAX  INTEGER {
                disabled(0),
            enabled(1)
                }
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
                "disabled(0) - represents system with Protocol VLAN disabled. 
                 enabled(1) - represents system with Protocol VLAN enabled (Layer3 VLAN)."
        ::= { snSwInfo 31 }

snMacStationVLanId OBJECT-TYPE
        SYNTAX  INTEGER (0..4095)
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
                "This VLAN ID controls filtering of the Forwarding Database
                table in the standard Bridge MIB (dot1dTpFdbTable).  Since the
                dot1dTpFdbTable contains MAC addresses associated with each of
                the ports in the bridge, and each MAC address can be
                associated with different VLANs, the snMacStationVLanId can be
                used by users to specify which VLAN's MAC Station information
                the dot1dTpFdbTable should provide.  If this variable is set
                to zero (the default value), all MAC station entries will be
                returned when the dot1dTpFdbTable is retrieved.  The
                VLAN-aware dot1qTpFdbTable described in RFC 2674 should be
                used as a replacement for this variable."
        ::= { snSwInfo 32 }

snSwClearCounters OBJECT-TYPE
        SYNTAX  INTEGER {
                valid(0),
            clear(1)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "valid(0) - a SNMP-GET of this mib shows that it is valid command to use. 
                 clear(1) - represents clear counter command of the following counters:
                                        Dot3, MIB2, IP and IPX counters for all ports."
        ::= { snSwInfo 33 }

snSw8021qTagType OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The IEEE802.1q tag type embedded in the length/type field of
                an Ethernet packet. It specifies that the 2 octets after the
                length/type field in an Ethernet packet is the tag value."
    DEFVAL { 33024 }
        ::= { snSwInfo 34 }

snSwBroadcastLimit OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Limit the number of broadcast packets to forward out of the
                switch ports. This object specifies the number of broadcast
                packets per second. Setting a value of 0 to this object
                disables the limitation check."
    DEFVAL { 0 }
        ::= { snSwInfo 35 }

snSwMaxMacFilterPerSystem  OBJECT-TYPE
        SYNTAX  INTEGER 
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The maximum number of MAC Filters per system in the MAC Filter table."
        ::= { snSwInfo 36 }

snSwMaxMacFilterPerPort  OBJECT-TYPE
        SYNTAX  INTEGER 
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The maximum number of MAC Filters per port in the Port MAC Access Filter table."
        ::= { snSwInfo 37 }

snSwDefaultVLanId OBJECT-TYPE
        SYNTAX  INTEGER (1..4095)
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The VLAN ID of the DEFAULT PORT-VLAN."
        ::= { snSwInfo 38 }

snSwGlobalAutoNegotiate OBJECT-TYPE
        SYNTAX  INTEGER {
                disabled(0),
                enabled(1),
                negFullAuto(2),
                other(3)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "This feature only applies to Gigabit Ethernet ports. If set
                to disable(0), all Gigabit Ethernet ports will be put to non-
                negotiation mode. If set to enable(1), all Gigabit Ethernet
                ports will start auto-negotiation indefinitely until succeed.
                If set to negFullAuto(2), all Gigabit Ethernet ports will start
                with auto-negotiation, if the negotiation failed, then they
                will automatically switch to non-negotiation mode. Stackable
                products (except TurboIron 8) Gigabit Ethernet ports do not
                support negFullAuto(2). If the snSwPortInfoAutoNegotiate value
                of a port was not set to global, this global value does not
                apply to the negotiation mode of that port."
    DEFVAL { negFullAuto }
        ::= { snSwInfo 39 }

snSwQosMechanism OBJECT-TYPE
        SYNTAX  INTEGER { strict(0), weighted(1) }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Indicates whether the qos mechanism is
                 strict or weighted."
    DEFVAL { weighted }
        ::= { snSwInfo 40 }

snSwSingleStpMode OBJECT-TYPE
        SYNTAX  INTEGER {
                disabled(0),
                enabled(1)       
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Single Spanning Tree System Mode in the Switch Group 
                 can be set either enabled or disabled and the default is 
                 disabled mode.
                 enabled(1)...........activate Single Spanning Tree
                 disabled(0)..........no Single Spanning Tree"
        ::= { snSwInfo 41 }

snSwFastStpMode OBJECT-TYPE
        SYNTAX  INTEGER {
                disabled(0),
                enabled(1)       
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Fast Spanning Tree System Mode in the Switch Group 
                 can be set either enabled or disabled and the default is 
                 enabled mode.
                 enabled(1)...........activate Fast Spanning Tree
                 disabled(0)..........no Fast Spanning Tree"
        ::= { snSwInfo 42 }

snSwViolatorIfIndex OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The port number of the switch or router that received
                 a violator packet. It is included in the locked
                 address violation trap."
        ::= { snSwInfo 43 }

snSwSingleStpVLanId OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The VLAN ID of the Single Spanning Tree VLAN if Single
                Spanning Tree was enabled. This object returns zero if
                Single Spanning Tree was disabled."
        ::= { snSwInfo 44 }


-- VLAN Layer 2 Switch VLAN By Port Information Table


snVLanByPortTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SnVLanByPortEntry
        ACCESS  not-accessible
        STATUS  deprecated
        DESCRIPTION
                "If snSwGroupOperMode is configured as basic mode
                 which is VLAN by Port, Layer2 switching,
                 then this table is valid.  Each VLAN switch port
                 could have a number of VLAN IDs."
        ::= { snVLanInfo 1 }


snVLanByPortEntry OBJECT-TYPE
        SYNTAX  SnVLanByPortEntry
        ACCESS  not-accessible
        STATUS  deprecated
        DESCRIPTION
                "An entry in the VLAN By Port Information table.
                 snVLanByPortVLanIndex = 1 and with 
                 snVLanByPortVLanId = 1 together implies all attributes
                 applying to the Global switch group i.e. noVLan.
                 A SNMP SET PDU for a row of the snVLanByPortTable 
                 requires the entired sequence of the MIB Objects in each 
                 snVLanByPortEntry stored in one PDU.  Otherwise, 
         GENERR return-value will be returned."
        INDEX   { 
                snVLanByPortVLanIndex
        }
        ::= { snVLanByPortTable 1 }


SnVLanByPortEntry ::= SEQUENCE {
        snVLanByPortVLanIndex
                INTEGER,
        snVLanByPortVLanId
                INTEGER,
        snVLanByPortPortMask
                PortMask,
        snVLanByPortQos
                INTEGER,
        snVLanByPortStpMode
                INTEGER,
        snVLanByPortStpPriority 
        INTEGER,
        snVLanByPortStpGroupMaxAge 
                INTEGER,
        snVLanByPortStpGroupHelloTime 
                INTEGER,
        snVLanByPortStpGroupForwardDelay 
                INTEGER,
        snVLanByPortRowStatus 
                INTEGER,
        snVLanByPortOperState
                INTEGER,
        snVLanByPortBaseNumPorts
        INTEGER,
        snVLanByPortBaseType
        INTEGER, 
        snVLanByPortStpProtocolSpecification 
        INTEGER,
        snVLanByPortStpMaxAge
        Timeout,
        snVLanByPortStpHelloTime 
        Timeout,
        snVLanByPortStpHoldTime 
        INTEGER,
        snVLanByPortStpForwardDelay 
        Timeout,
        snVLanByPortStpTimeSinceTopologyChange 
        TimeTicks,
        snVLanByPortStpTopChanges
        Counter,
        snVLanByPortStpRootCost
        INTEGER,
        snVLanByPortStpRootPort
        INTEGER,
        snVLanByPortStpDesignatedRoot
        BridgeId,
    snVLanByPortBaseBridgeAddress 
        MacAddress,
        snVLanByPortVLanName
                DisplayString,
    snVLanByPortRouterIntf
            INTEGER,
        snVLanByPortChassisPortMask
                OCTET STRING,
        snVLanByPortPortList
                OCTET STRING
        }

snVLanByPortVLanIndex OBJECT-TYPE
        SYNTAX  INTEGER (1..4095)
        ACCESS  read-only
        STATUS  deprecated
        DESCRIPTION
                "The VLAN ID index must not be greater than the 
                 snVLanGroupVlanMaxEntry. Each VLAN Identifier can 
                 have a membership of multiple ports."
        ::= { snVLanByPortEntry 1 }


snVLanByPortVLanId OBJECT-TYPE
        SYNTAX  INTEGER (1..4095)
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
                "The VLAN ID index to the VLAN By Port Info Table.
                 Each VLAN Identifier can have a membership of multiple 
                 ports."
        ::= { snVLanByPortEntry 2 }


snVLanByPortPortMask OBJECT-TYPE
        SYNTAX  PortMask
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
                "The Standand-alone switch VLAN port membership. (It was obsoleted for Chassis Product)"
        ::= { snVLanByPortEntry 3 }


snVLanByPortQos OBJECT-TYPE
        SYNTAX  INTEGER {
                level0(0),
                level1(1),
                level2(2),
                level3(3),
                level4(4),
                level5(5),
                level6(6),
                level7(7)
                }
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
                "The Stand alone stackable switch VLAN Priority values are:
                 low(0)   -- low prority
                 high(1) -- high prority.
                 The BigIron switch VLAN Priority values are:
                level0(0), level1(1), level2(2), level3(3),
                level4(4), level5(5), level6(6), level7(7) "
        ::= { snVLanByPortEntry 4 }

snVLanByPortStpMode OBJECT-TYPE
        SYNTAX  INTEGER {
                disable(0),
                enableStp(1),
                enableRstp(2)
                }
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
                "Spanning Tree Mode in the Switch Group can be set
                 either enabled or disabled and the default is 
                 enabled mode.
                 disable(0)...........no Spanning Tree
                 enableStp(1).........activate Spanning Tree
                 enableRstp(2)........activate Rapid Spanning Tree"
        ::= { snVLanByPortEntry 5 }

snVLanByPortStpPriority OBJECT-TYPE
    SYNTAX  INTEGER (0..65535)
    ACCESS  read-write
    STATUS  deprecated
    DESCRIPTION
        "dot1dStpPriority : The value of the write-able 
         portion of the Stp ID, i.e., the first two octets 
         of the (8 octet long) Bridge ID.  The other (last) 6 
         octets of the Bridge ID are given by the value of the 
         base bridge address - dot1dBaseBridgeAddress."
        ::= { snVLanByPortEntry 6 }

snVLanByPortStpGroupMaxAge OBJECT-TYPE
        SYNTAX  INTEGER (0..40)
    ACCESS  read-write
    STATUS  deprecated
    DESCRIPTION
    "dot1dStpBridgeMaxAge: From RFC1493(Bridge MIB).
     The value that all bridges use for MaxAge when 
     this bridge is acting as the root. 
     Note that 802.1D-1990 specifies that the 
     range for this parameter is related to the value of
     dot1dStpBridgeHelloTime. The granularity of this
     timer is specified by 802.1D-1990 to be 1 second.
     An agent may return a badValue error if a set is
     attempted to a value which is not a whole number
     of seconds."
        ::= { snVLanByPortEntry 7 }

snVLanByPortStpGroupHelloTime OBJECT-TYPE
    SYNTAX  INTEGER (0..10)
    ACCESS  read-write
    STATUS  deprecated
    DESCRIPTION
    "dot1dStpBridgeHelloTime: From RFC1493(Bridge MIB).
     The value that all bridges use for HelloTime when
     this bridge is acting as the root.  The
     granularity of this timer is specified by 802.1D-
     1990 to be 1 second.  An agent may return a
     badValue error if a set is attempted to a value
     which is not a whole number of seconds."
        ::= { snVLanByPortEntry 8 }

snVLanByPortStpGroupForwardDelay OBJECT-TYPE
        SYNTAX  INTEGER (0..30)
    ACCESS  read-write
    STATUS  deprecated
    DESCRIPTION
        "dot1dStpBridgeForwardDelay : From RFC1493(Bridge MIB).
     The value that all bridges use for ForwardDelay
     when this bridge is acting as the root.  Note that
     802.1D-1990 specifies that the range for this
     parameter is related to the value of
     dot1dStpBridgeMaxAge.  The granularity of this
     timer is specified by 802.1D-1990 to be 1 second.
     An agent may return a badValue error if a set is
     attempted to a value which is not a whole number
     of seconds."
        ::= { snVLanByPortEntry 9 }

snVLanByPortRowStatus OBJECT-TYPE
        SYNTAX  INTEGER {
                other(1),
                valid(2),
                delete(3),
                create(4),
                modify(5)
                }
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
                "This object is used to create and
                delete row in the table and control
                if they are used. The values
                that can be written are:
                  delete(3)...deletes the row
                  create(4)...creates a new row
                  modify(5)...modifies an exsisting row

                If the row exists, then a SET with
                value of create(4) returns error
                'badValue'. Deleted rows go away
                immediately. The following values
                can be returned on reads:
                  noSuch(0)...no such row
                  other(1)....some other case
                  valid(2)....the row exists and is valid"
        ::= { snVLanByPortEntry 10 }

snVLanByPortOperState OBJECT-TYPE
        SYNTAX  INTEGER {
                notActivated(0),             
                activated(1)
                }
        ACCESS  read-only
        STATUS  deprecated
        DESCRIPTION
                "By default, this mode is set to notActivated(0).
                 notActivated(0)...the VLAN entry is not activated and not in running mode.
                 activated(1)......the VLAN entry is activated and in running mode"  
        ::= { snVLanByPortEntry 11 }

snVLanByPortBaseNumPorts OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
    "The number of ports controlled by this bridging
     entity."
        ::= { snVLanByPortEntry 12 }

snVLanByPortBaseType OBJECT-TYPE
    SYNTAX  INTEGER {
              unknown(1),
              transparent-only(2),
              sourceroute-only(3),
              srt(4)
            }
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
    "Indicates what type of bridging this bridge can
     perform.  If a bridge is actually performing a
     certain type of bridging this will be indicated by
     entries in the port table for the given type."
        ::= { snVLanByPortEntry 13 }

snVLanByPortStpProtocolSpecification OBJECT-TYPE
    SYNTAX  INTEGER {
        unknown(1),
        decLb100(2),
        ieee8021d(3)
        }
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
    "An indication of what version of the Spanning
     Tree Protocol is being run.  The value
     'decLb100(2)' indicates the DEC LANbridge 100
     Spanning Tree protocol.  IEEE 802.1d
     implementations will return 'ieee8021d(3)'.  If
     future versions of the IEEE Spanning Tree Protocol
     are released that are incompatible with the
     current version a new value will be defined."
        ::= { snVLanByPortEntry 14 }


snVLanByPortStpMaxAge OBJECT-TYPE
    SYNTAX  Timeout
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
    "dot1dStpMaxAge: From RFC1493(Bridge MIB).
     The maximum age of Spanning Tree Protocol
     information learned from the network on any port
     before it is discarded, in units of hundredths of
     a second.  This is the actual value that this
     bridge is currently using."
        ::= { snVLanByPortEntry 15 }

snVLanByPortStpHelloTime OBJECT-TYPE
    SYNTAX  Timeout
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
    "dot1dStpHelloTime: From RFC1493(Bridge MIB).
     The amount of time between the transmission of
     Configuration bridge PDUs by this node on any port
     when it is the root of the spanning tree or trying
     to become so, in units of hundredths of a second.
     This is the actual value that this bridge is
     currently using."
        ::= { snVLanByPortEntry 16 }

snVLanByPortStpHoldTime OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
    "dot1dStpHoldTime: From RFC1493(Bridge MIB).
     This time value determines the interval length
     during which no more than two Configuration bridge
     PDUs shall be transmitted by this node, in units
     of hundredths of a second."
        ::= { snVLanByPortEntry 17 }

 snVLanByPortStpForwardDelay OBJECT-TYPE
     SYNTAX  Timeout
     ACCESS  read-only
     STATUS  deprecated
     DESCRIPTION
     "dot1dStpForwardDelay: From RFC1493(Bridge MIB).
      This time value, measured in units of hundredths
      of a second, controls how fast a port changes its
      spanning state when moving towards the Forwarding
      state.  The value determines how long the port
      stays in each of the Listening and Learning
      states, which precede the Forwarding state.  This
      value is also used, when a topology change has
      been detected and is underway, to age all dynamic
      entries in the Forwarding Database.  [Note that
      this value is the one that this bridge is
      currently using, in contrast to
      dot1dStpBridgeForwardDelay which is the value that
      this bridge and all others would start using
      if/when this bridge were to become the root.]"
        ::= { snVLanByPortEntry 18 }


snVLanByPortStpTimeSinceTopologyChange OBJECT-TYPE
    SYNTAX  TimeTicks
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
    "The time (in hundredths of a second) since the
     last time a topology change was detected by the
     bridge entity."
        ::= { snVLanByPortEntry 19 }

snVLanByPortStpTopChanges OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
    "The total number of topology changes detected by
     this bridge since the management entity was last
     reset or initialized."
        ::= { snVLanByPortEntry 20 }

snVLanByPortStpRootCost OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
    "dot1dStpRootCost: From RFC1493(Bridge MIB).     
     The cost of the path to the root as seen from
     this bridge."
        ::= { snVLanByPortEntry 21 }

snVLanByPortStpRootPort OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
    "dot1dStpRootPort: From RFC1493(Bridge MIB).
     The port number of the port which offers the
     lowest cost path from this bridge to the root
     bridge."
        ::= { snVLanByPortEntry 22 }

snVLanByPortStpDesignatedRoot OBJECT-TYPE
    SYNTAX  BridgeId
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
    "dot1dStpDesignatedRoot: From RFC1493(Bridge MIB).
     The bridge identifier of the root of the spanning
     tree as determined by the Spanning Tree Protocol
     as executed by this node.  This value is used as
     the Root Identifier parameter in all Configuration
     Bridge PDUs originated by this node."
        ::= { snVLanByPortEntry 23 }

snVLanByPortBaseBridgeAddress OBJECT-TYPE
    SYNTAX  MacAddress
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
    "The MAC address used by this bridge when it must
     be referred to in a unique fashion.   It is
     recommended that this be the numerically smallest
     MAC address of all ports that belong to this
     bridge.  However it is only required to be unique.
     When concatenated with dot1dStpPriority a unique
     BridgeIdentifier is formed which is used in the
     Spanning Tree Protocol."
        ::= { snVLanByPortEntry 24 }

snVLanByPortVLanName OBJECT-TYPE
        SYNTAX  DisplayString (SIZE(0..32))
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
                "VLAN Community Name string."
        ::= { snVLanByPortEntry 25 }


snVLanByPortRouterIntf OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
                "Optional: A virtual interface for router to the VLAN -- applied to router only.
                 If a SNMP-Get value is zero, that means this object was not configured."
        ::= { snVLanByPortEntry 26 }


snVLanByPortChassisPortMask OBJECT-TYPE
        SYNTAX  OCTET STRING
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
                "The Chassis VLAN switch port membership.
                (It was obsoleted after release 07100, replaced by snVLanByPortPortList)"
        ::= { snVLanByPortEntry 27 }

snVLanByPortPortList OBJECT-TYPE
        SYNTAX  OCTET STRING
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
                "A list of port indices which are the port
                membership of a VLAN By Port. Each port index is a
                16-bit integer in big endian order. 8-bit is the slot number,
                the other 8-bit is the port number."
        ::= { snVLanByPortEntry 28 }


-- Port VLAN (Layer 2 VLAN) Port Membership Table
-- Use this table to create or delete a VLAN entry


snVLanByPortMemberTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SnVLanByPortMemberEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "Port VLAN (Layer 2 VLAN) port membership table."
        ::= { snVLanInfo 6 }


snVLanByPortMemberEntry OBJECT-TYPE
        SYNTAX  SnVLanByPortMemberEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "An entry of the port VLAN membership table."
        INDEX   { snVLanByPortMemberVLanId, snVLanByPortMemberPortId }
        ::= { snVLanByPortMemberTable 1 }

SnVLanByPortMemberEntry ::= SEQUENCE {
        snVLanByPortMemberVLanId
                INTEGER,
        snVLanByPortMemberPortId
                INTEGER,
        snVLanByPortMemberRowStatus 
                INTEGER
        }

snVLanByPortMemberVLanId OBJECT-TYPE
        SYNTAX  INTEGER (1..4095)
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The VLAN identifier (VLAN ID)."
        ::= { snVLanByPortMemberEntry 1 }

snVLanByPortMemberPortId OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The ifIndex which is a member of the port VLAN."
        ::= { snVLanByPortMemberEntry 2 }

snVLanByPortMemberRowStatus OBJECT-TYPE
        SYNTAX  INTEGER {
                other(1),
                valid(2),
                delete(3),
                create(4)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "This object is used to create and
                delete row in the table and control
                if they are used. The values
                that can be written are:
                  delete(3)...deletes the row
                  create(4)...creates a new row

                If the row exists, then a SET with
                value of create(4) returns error
                'badValue'. Deleted rows go away
                immediately. The following values
                can be returned on reads:
                  noSuch(0)...no such row
                  other(1)....some other case
                  valid(2)....the row exists and is valid"
        ::= { snVLanByPortMemberEntry 3 }


-- Port VLAN (Layer 2 VLAN) Configuration Table
-- Use this table to configure a VLAN entry


snVLanByPortCfgTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SnVLanByPortCfgEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "Port VLAN (Layer 2 VLAN) configuration table."
        ::= { snVLanInfo 7 }


snVLanByPortCfgEntry OBJECT-TYPE
        SYNTAX  SnVLanByPortCfgEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "An entry of the port VLAN configuration table."
        INDEX   { snVLanByPortCfgVLanId }
        ::= { snVLanByPortCfgTable 1 }


SnVLanByPortCfgEntry ::= SEQUENCE {
        snVLanByPortCfgVLanId
                INTEGER,
        snVLanByPortCfgQos
                INTEGER,
        snVLanByPortCfgStpMode
                INTEGER,
        snVLanByPortCfgStpPriority 
        INTEGER,
        snVLanByPortCfgStpGroupMaxAge 
                INTEGER,
        snVLanByPortCfgStpGroupHelloTime 
                INTEGER,
        snVLanByPortCfgStpGroupForwardDelay 
                INTEGER,
        snVLanByPortCfgBaseNumPorts
        INTEGER,
        snVLanByPortCfgBaseType
        INTEGER, 
        snVLanByPortCfgStpProtocolSpecification 
        INTEGER,
        snVLanByPortCfgStpMaxAge
        Timeout,
        snVLanByPortCfgStpHelloTime 
        Timeout,
        snVLanByPortCfgStpHoldTime 
        INTEGER,
        snVLanByPortCfgStpForwardDelay 
        Timeout,
        snVLanByPortCfgStpTimeSinceTopologyChange 
        TimeTicks,
        snVLanByPortCfgStpTopChanges
        Counter,
        snVLanByPortCfgStpRootCost
        INTEGER,
        snVLanByPortCfgStpRootPort
        INTEGER,
        snVLanByPortCfgStpDesignatedRoot
        BridgeId,
    snVLanByPortCfgBaseBridgeAddress 
        MacAddress,
        snVLanByPortCfgVLanName
                DisplayString,
    snVLanByPortCfgRouterIntf
            INTEGER,
        snVLanByPortCfgRowStatus
                INTEGER,
        snVLanByPortCfgStpVersion
        INTEGER
        }

snVLanByPortCfgVLanId OBJECT-TYPE
        SYNTAX  INTEGER (1..4095)
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The VLAN identifier (VLAN ID)."
        ::= { snVLanByPortCfgEntry 1 }

snVLanByPortCfgQos OBJECT-TYPE
        SYNTAX  INTEGER {
                level0(0),
                level1(1),
                level2(2),
                level3(3),
                level4(4),
                level5(5),
                level6(6),
                level7(7)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The Stand alone stackable switch VLAN Priority values are:
                 level0(0)   -- low prority
                 level1(1) -- high prority.
                 The BigIron switch VLAN Priority values are:
                level0(0), level1(1), level2(2), level3(3),
                level4(4), level5(5), level6(6), level7(7) "
        ::= { snVLanByPortCfgEntry 2 }

snVLanByPortCfgStpMode OBJECT-TYPE
        SYNTAX  INTEGER {
                disable(0),
                enableStp(1),
                enableRstp(2)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Spanning Tree Mode in the Switch Group can be set
                 either enabled or disabled and the default is 
                 enabled mode.
                 disable(0)...........no Spanning Tree
                 enableStp(1).........activate Spanning Tree
                 enableRstp(2)........activate Rapid Spanning Tree"
        ::= { snVLanByPortCfgEntry 3 }

snVLanByPortCfgStpPriority OBJECT-TYPE
    SYNTAX  INTEGER (0..65535)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "dot1dStpPriority : The value of the write-able 
         portion of the Stp ID, i.e., the first two octets 
         of the (8 octet long) Bridge ID.  The other (last) 6 
         octets of the Bridge ID are given by the value of the 
         base bridge address - dot1dBaseBridgeAddress."
        ::= { snVLanByPortCfgEntry 4 }

snVLanByPortCfgStpGroupMaxAge OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
    "dot1dStpBridgeMaxAge: From RFC1493(Bridge MIB).
     The value that all bridges use for MaxAge when 
     this bridge is acting as the root. 
     Note that 802.1D-1990 specifies that the 
     range for this parameter is related to the value of
     dot1dStpBridgeHelloTime. The granularity of this
     timer is specified by 802.1D-1990 to be 1 second.
     An agent may return a badValue error if a set is
     attempted to a value which is not a whole number
     of seconds.
       Valid value betweek 6 and 40. Default is 20 seconds.
     Value 0 is returned if no STP is not configured for this vlan."
        ::= { snVLanByPortCfgEntry 5 }

snVLanByPortCfgStpGroupHelloTime OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
    "dot1dStpBridgeHelloTime: From RFC1493(Bridge MIB).
     The value that all bridges use for HelloTime when
     this bridge is acting as the root.  The
     granularity of this timer is specified by 802.1D-
     1990 to be 1 second.  An agent may return a
     badValue error if a set is attempted to a value
     which is not a whole number of seconds.
       Valid value betweek 1 and 10. Default is 2 seconds.
     Value 0 is returned if no STP is not configured for this vlan."
        ::= { snVLanByPortCfgEntry 6 }

snVLanByPortCfgStpGroupForwardDelay OBJECT-TYPE
        SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "dot1dStpBridgeForwardDelay : From RFC1493(Bridge MIB).
     The value that all bridges use for ForwardDelay
     when this bridge is acting as the root.  Note that
     802.1D-1990 specifies that the range for this
     parameter is related to the value of
     dot1dStpBridgeMaxAge.  The granularity of this
     timer is specified by 802.1D-1990 to be 1 second.
     An agent may return a badValue error if a set is
     attempted to a value which is not a whole number
     of seconds.
       Valid value betweek 2 and 30. Default is 15 seconds.
     Value 0 is returned if no STP is not configured for this vlan."
        ::= { snVLanByPortCfgEntry 7 }

snVLanByPortCfgBaseNumPorts OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
    "The number of ports controlled by this bridging
     entity."
        ::= { snVLanByPortCfgEntry 8 }

snVLanByPortCfgBaseType OBJECT-TYPE
    SYNTAX  INTEGER {
              unknown(1),
              transparent-only(2),
              sourceroute-only(3),
              srt(4)
            }
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
    "Indicates what type of bridging this bridge can
     perform.  If a bridge is actually performing a
     certain type of bridging this will be indicated by
     entries in the port table for the given type."
        ::= { snVLanByPortCfgEntry 9 }

snVLanByPortCfgStpProtocolSpecification OBJECT-TYPE
    SYNTAX  INTEGER {
        unknown(1),
        decLb100(2),
        ieee8021d(3)
        }
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
    "An indication of what version of the Spanning
     Tree Protocol is being run.  The value
     'decLb100(2)' indicates the DEC LANbridge 100
     Spanning Tree protocol.  IEEE 802.1d
     implementations will return 'ieee8021d(3)'.  If
     future versions of the IEEE Spanning Tree Protocol
     are released that are incompatible with the
     current version a new value will be defined."
        ::= { snVLanByPortCfgEntry 10 }


snVLanByPortCfgStpMaxAge OBJECT-TYPE
    SYNTAX  Timeout
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
    "dot1dStpMaxAge: From RFC1493(Bridge MIB).
     The maximum age of Spanning Tree Protocol
     information learned from the network on any port
     before it is discarded, in units of hundredths of
     a second.  This is the actual value that this
     bridge is currently using."
        ::= { snVLanByPortCfgEntry 11 }

snVLanByPortCfgStpHelloTime OBJECT-TYPE
    SYNTAX  Timeout
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
    "dot1dStpHelloTime: From RFC1493(Bridge MIB).
     The amount of time between the transmission of
     Configuration bridge PDUs by this node on any port
     when it is the root of the spanning tree or trying
     to become so, in units of hundredths of a second.
     This is the actual value that this bridge is
     currently using."
        ::= { snVLanByPortCfgEntry 12 }

snVLanByPortCfgStpHoldTime OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
    "dot1dStpHoldTime: From RFC1493(Bridge MIB).
     This time value determines the interval length
     during which no more than two Configuration bridge
     PDUs shall be transmitted by this node, in units
     of hundredths of a second."
        ::= { snVLanByPortCfgEntry 13 }

 snVLanByPortCfgStpForwardDelay OBJECT-TYPE
     SYNTAX  Timeout
     ACCESS  read-only
     STATUS  mandatory
     DESCRIPTION
     "dot1dStpForwardDelay: From RFC1493(Bridge MIB).
      This time value, measured in units of hundredths
      of a second, controls how fast a port changes its
      spanning state when moving towards the Forwarding
      state.  The value determines how long the port
      stays in each of the Listening and Learning
      states, which precede the Forwarding state.  This
      value is also used, when a topology change has
      been detected and is underway, to age all dynamic
      entries in the Forwarding Database.  [Note that
      this value is the one that this bridge is
      currently using, in contrast to
      dot1dStpBridgeForwardDelay which is the value that
      this bridge and all others would start using
      if/when this bridge were to become the root.]"
        ::= { snVLanByPortCfgEntry 14 }


snVLanByPortCfgStpTimeSinceTopologyChange OBJECT-TYPE
    SYNTAX  TimeTicks
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
    "The time (in hundredths of a second) since the
     last time a topology change was detected by the
     bridge entity."
        ::= { snVLanByPortCfgEntry 15 }

snVLanByPortCfgStpTopChanges OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
    "The total number of topology changes detected by
     this bridge since the management entity was last
     reset or initialized."
        ::= { snVLanByPortCfgEntry 16 }

snVLanByPortCfgStpRootCost OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
    "dot1dStpRootCost: From RFC1493(Bridge MIB).     
     The cost of the path to the root as seen from
     this bridge."
        ::= { snVLanByPortCfgEntry 17 }

snVLanByPortCfgStpRootPort OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
    "dot1dStpRootPort: From RFC1493(Bridge MIB).
     The port number of the port which offers the
     lowest cost path from this bridge to the root
     bridge."
        ::= { snVLanByPortCfgEntry 18 }

snVLanByPortCfgStpDesignatedRoot OBJECT-TYPE
    SYNTAX  BridgeId
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
    "dot1dStpDesignatedRoot: From RFC1493(Bridge MIB).
     The bridge identifier of the root of the spanning
     tree as determined by the Spanning Tree Protocol
     as executed by this node.  This value is used as
     the Root Identifier parameter in all Configuration
     Bridge PDUs originated by this node."
        ::= { snVLanByPortCfgEntry 19 }

snVLanByPortCfgBaseBridgeAddress OBJECT-TYPE
    SYNTAX  MacAddress
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
    "The MAC address used by this bridge when it must
     be referred to in a unique fashion.   It is
     recommended that this be the numerically smallest
     MAC address of all ports that belong to this
     bridge.  However it is only required to be unique.
     When concatenated with dot1dStpPriority a unique
     BridgeIdentifier is formed which is used in the
     Spanning Tree Protocol."
        ::= { snVLanByPortCfgEntry 20 }

snVLanByPortCfgVLanName OBJECT-TYPE
        SYNTAX  DisplayString (SIZE(0..32))
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "VLAN Community Name string."
        ::= { snVLanByPortCfgEntry 21 }


snVLanByPortCfgRouterIntf OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Optional: A virtual interface for router to the VLAN -- applied to router only.
                 If a SNMP-Get value is zero, that means this object was not configured."
        ::= { snVLanByPortCfgEntry 22 }

snVLanByPortCfgRowStatus OBJECT-TYPE
        SYNTAX  INTEGER {
                other(1),
                valid(2),
                delete(3)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Use object to delete a vlan entry."
        ::= { snVLanByPortCfgEntry 23 }

snVLanByPortCfgStpVersion OBJECT-TYPE
        SYNTAX  INTEGER {
                stpCompatible(0),
                rstp(2)
                }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "The version of Spanning Tree Protocol the bridge is
         currently running.  The value 'stpCompatible(0)'
         indicates the Spanning Tree Protocol specified in
         IEEE 802.1D and 'rstp(2)' indicates the Rapid Spanning
         Tree Protocol specified in IEEE 802.1w.  New value may
         be defined as future versions of the protocol become
         available."
        ::= { snVLanByPortCfgEntry 24 }


-- VLAN by Protocol Configuration Table 


snVLanByProtocolTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SnVLanByProtocolEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "."
        ::= { snVLanInfo 2 }


snVLanByProtocolEntry OBJECT-TYPE
        SYNTAX  SnVLanByProtocolEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "An entry in the VLAN By Protocol Configuration table. "
        INDEX   { 
                snVLanByProtocolVLanId,
                snVLanByProtocolIndex
        }
        ::= { snVLanByProtocolTable 1 }


SnVLanByProtocolEntry ::= SEQUENCE {
    snVLanByProtocolVLanId
                INTEGER,
        snVLanByProtocolIndex
                INTEGER,
        snVLanByProtocolDynamic
                INTEGER,
        snVLanByProtocolStaticMask
                PortMask,
        snVLanByProtocolExcludeMask
                PortMask,
        snVLanByProtocolRouterIntf
                INTEGER,        
        snVLanByProtocolRowStatus
                INTEGER,        
        snVLanByProtocolDynamicMask
                PortMask,
        snVLanByProtocolChassisStaticMask
                OCTET STRING,
        snVLanByProtocolChassisExcludeMask
                OCTET STRING,
        snVLanByProtocolChassisDynamicMask
                OCTET STRING,
        snVLanByProtocolVLanName
                DisplayString,
        snVLanByProtocolStaticPortList
                OCTET STRING,
        snVLanByProtocolExcludePortList
                OCTET STRING,
        snVLanByProtocolDynamicPortList
                OCTET STRING
        }

snVLanByProtocolVLanId OBJECT-TYPE
        SYNTAX  INTEGER (1..4095)
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The VLAN ID index to both of the VLAN By Port Info Table
                 and this table."
        ::= { snVLanByProtocolEntry 1 }


snVLanByProtocolIndex OBJECT-TYPE
        SYNTAX  INTEGER {
                ip(1),
            ipx(2),
            appleTalk(3),
            decNet(4),
            netBios(5),
                others(6),
                ipv6(7)
                }
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                " The following IP/IPX protocol VLAN types are operated 
                in Layer3 VLAN such as : ip(1), ipx(2), ipv6(7)
                The following are operated in Layer2 bridging such as:
            appleTalk(3), decNet(4), netBios(5),
            others(6) -- other protocols which are defined here. "
        ::= { snVLanByProtocolEntry 2 }

snVLanByProtocolDynamic OBJECT-TYPE
        SYNTAX  INTEGER {
                disabled(0),
            enabled(1)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                " disabled(0) : disabled dynamic port inclusion - applied to switch only.
                  enabled(1) : enabled dynamic port inclusion - applied to switch only. "
        ::= { snVLanByProtocolEntry 3 }

snVLanByProtocolStaticMask OBJECT-TYPE
        SYNTAX  PortMask
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
                "The Standand-alone switch Protocol VLAN port membership applied in static mode.
                (It was obsoleted for Chassis Product)"
        ::= { snVLanByProtocolEntry 4 }

snVLanByProtocolExcludeMask OBJECT-TYPE
        SYNTAX  PortMask
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
                "The Standand-alone switch Protocol VLAN port membership applied in exclusive mode.
                (It was obsoleted for Chassis Product)"
        ::= { snVLanByProtocolEntry 5 }

snVLanByProtocolRouterIntf OBJECT-TYPE
        SYNTAX  INTEGER (1..60)
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Optional: A virtual interface for router to the VLAN -- applied to router only.
                 If a SNMP-Get value is zero, that means this object was not configured."
        ::= { snVLanByProtocolEntry 6 }

snVLanByProtocolRowStatus OBJECT-TYPE
        SYNTAX  INTEGER {
                other(1),
                valid(2),
                delete(3),
                create(4),
                modify(5)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "This object is used to create and
                delete row in the table and control
                if they are used. The values
                that can be written are:
                  delete(3)...deletes the row
                  create(4)...creates a new row
                  modify(5)...modifies an exsisting row

                If the row exists, then a SET with
                value of create(4) returns error
                'badValue'. Deleted rows go away
                immediately. The following values
                can be returned on reads:
                  noSuch(0)...no such row
                  other(1)....some other case
                  valid(2)....the row exists and is valid"
        ::= { snVLanByProtocolEntry 7 }

snVLanByProtocolDynamicMask OBJECT-TYPE
        SYNTAX  PortMask
        ACCESS  read-only
        STATUS  deprecated
        DESCRIPTION
                "The Standand-alone switch Protocol VLAN active port membership.
                (It was obsoleted for Chassis Product)"
        ::= { snVLanByProtocolEntry 8 }

snVLanByProtocolChassisStaticMask OBJECT-TYPE
        SYNTAX  OCTET STRING (SIZE(32))
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
                "The Chassis Protocol VLAN port membership applied in static mode.
                (It was obsoleted after release 07100, replaced by snVLanByProtocolStaticPortList)"
        ::= { snVLanByProtocolEntry 9 }

snVLanByProtocolChassisExcludeMask OBJECT-TYPE
        SYNTAX  OCTET STRING (SIZE(32))
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
                "The Chassis Protocol VLAN port membership applied in exclusive mode.
                (It was obsoleted after release 07100, replaced by snVLanByProtocolExcludePortList)"
        ::= { snVLanByProtocolEntry 10 }

snVLanByProtocolChassisDynamicMask OBJECT-TYPE
        SYNTAX  OCTET STRING (SIZE(32))
        ACCESS  read-only
        STATUS  deprecated
        DESCRIPTION
                "The Chassis Protocol VLAN active port membership.
                (It was obsoleted after release 07100, replaced by snVLanByProtocolDynamicPortList)"
        ::= { snVLanByProtocolEntry 11 }

snVLanByProtocolVLanName OBJECT-TYPE
        SYNTAX  DisplayString (SIZE(0..32))
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "VLAN Community Name string."
        ::= { snVLanByProtocolEntry 12 }

snVLanByProtocolStaticPortList OBJECT-TYPE
        SYNTAX  OCTET STRING
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "A list of port indices which are the configured port
                membership of the Protocol VLAN. Each port index is a
                16-bit integer in big endian order. 8-bit is the slot number,
                the other 8-bit is the port number."
        ::= { snVLanByProtocolEntry 13 }

snVLanByProtocolExcludePortList OBJECT-TYPE
        SYNTAX  OCTET STRING
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "A list of port indices which are the excluded from port
                membership of the Protocol VLAN. Each port index is a
                16-bit integer in big endian order. 8-bit is the slot number,
                the other 8-bit is the port number."
        ::= { snVLanByProtocolEntry 14 }

snVLanByProtocolDynamicPortList OBJECT-TYPE
        SYNTAX  OCTET STRING
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "A list of port indices which are dynamically joining the port
                membership of the Protocol VLAN. Each port index is a
                16-bit integer in big endian order. 8-bit is the slot number,
                the other 8-bit is the port number."
        ::= { snVLanByProtocolEntry 15 }


-- VLAN By IP Subnet Configuration Table


snVLanByIpSubnetTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SnVLanByIpSubnetEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "An entry of the VLAN By IPX Network Number Table."
        ::= { snVLanInfo 3 }


snVLanByIpSubnetEntry OBJECT-TYPE
        SYNTAX  SnVLanByIpSubnetEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "An entry in the VLAN By IP Subnet Configuration table. "
        INDEX   { 
                snVLanByIpSubnetVLanId,
                snVLanByIpSubnetIpAddress,
                snVLanByIpSubnetSubnetMask
        }
        ::= { snVLanByIpSubnetTable 1 }


SnVLanByIpSubnetEntry ::= SEQUENCE {
        snVLanByIpSubnetVLanId
                INTEGER,
        snVLanByIpSubnetIpAddress
                IpAddress,
        snVLanByIpSubnetSubnetMask
                IpAddress,
        snVLanByIpSubnetDynamic
                INTEGER,
        snVLanByIpSubnetStaticMask
                PortMask,
        snVLanByIpSubnetExcludeMask
                PortMask,
        snVLanByIpSubnetRouterIntf
                INTEGER,
        snVLanByIpSubnetRowStatus
                INTEGER,
        snVLanByIpSubnetDynamicMask
                PortMask,
        snVLanByIpSubnetChassisStaticMask
                OCTET STRING,
        snVLanByIpSubnetChassisExcludeMask
                OCTET STRING,
        snVLanByIpSubnetChassisDynamicMask
                OCTET STRING,
        snVLanByIpSubnetVLanName
                DisplayString,
        snVLanByIpSubnetStaticPortList
                OCTET STRING,
        snVLanByIpSubnetExcludePortList
                OCTET STRING,
        snVLanByIpSubnetDynamicPortList
                OCTET STRING
        }

snVLanByIpSubnetVLanId OBJECT-TYPE
        SYNTAX  INTEGER (1..4095)
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The VLAN ID index to both of the VLAN By Port Info Table
                 and this table."
        ::= { snVLanByIpSubnetEntry 1 }


snVLanByIpSubnetIpAddress OBJECT-TYPE
        SYNTAX  IpAddress
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "Subnet IP address."
        ::= { snVLanByIpSubnetEntry 2 }

snVLanByIpSubnetSubnetMask OBJECT-TYPE
        SYNTAX  IpAddress
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "Subnet mask associated with the Subnet IP address."
        ::= { snVLanByIpSubnetEntry 3 }

snVLanByIpSubnetDynamic OBJECT-TYPE
        SYNTAX  INTEGER {
                disabled(0),
            enabled(1)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                " disabled(0) : disabled dynamic port inclusion - applied to switch only.
                  enabled(1) : enabled dynamic port inclusion - applied to switch only. "
        ::= { snVLanByIpSubnetEntry 4 }

snVLanByIpSubnetStaticMask OBJECT-TYPE
        SYNTAX  PortMask
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
                "The Standand-alone switch VLAN By Subnet port membership applied in static mode.
                (It was obsoleted for Chassis Product)"
        ::= { snVLanByIpSubnetEntry 5 }

snVLanByIpSubnetExcludeMask OBJECT-TYPE
        SYNTAX  PortMask
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
                "The Standand-alone switch VLAN By Subnet port membership applied in exclusive mode.
                (It was obsoleted for Chassis Product)"
        ::= { snVLanByIpSubnetEntry 6 }

snVLanByIpSubnetRouterIntf OBJECT-TYPE
        SYNTAX  INTEGER (1..60)
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Optional: A virtual interface for router to the VLAN -- applied to router only.
                 If a SNMP-Get value is zero, that means this object was not configured."
        ::= { snVLanByIpSubnetEntry 7 }


snVLanByIpSubnetRowStatus OBJECT-TYPE
        SYNTAX  INTEGER {
                other(1),
                valid(2),
                delete(3),
                create(4),
                modify(5)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "This object is used to create and
                delete row in the table and control
                if they are used. The values
                that can be written are:
                  delete(3)...deletes the row
                  create(4)...creates a new row
                  modify(5)...modifies an exsisting row

                If the row exists, then a SET with
                value of create(4) returns error
                'badValue'. Deleted rows go away
                immediately. The following values
                can be returned on reads:
                  noSuch(0)...no such row
                  other(1)....some other case
                  valid(2)....the row exists and is valid"
        ::= { snVLanByIpSubnetEntry 8 }

snVLanByIpSubnetDynamicMask OBJECT-TYPE
        SYNTAX  PortMask
        ACCESS  read-only
        STATUS  deprecated
        DESCRIPTION
                "The Standand-alone switch VLAN By Subnet active port membership.
                (It was obsoleted for Chassis Product)"
        ::= { snVLanByIpSubnetEntry 9 }

snVLanByIpSubnetChassisStaticMask OBJECT-TYPE
        SYNTAX  OCTET STRING (SIZE(32))
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
                "The Chassis VLAN By Subnet port membership applied in static mode.
                (It was obsoleted after release 07100, replaced by snVLanByIpSubnetStaticPortList)"
        ::= { snVLanByIpSubnetEntry 10 }

snVLanByIpSubnetChassisExcludeMask OBJECT-TYPE
        SYNTAX  OCTET STRING (SIZE(32))
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
                "The Chassis VLAN By Subnet port membership applied in exclusive mode.
                (It was obsoleted after release 07100, replaced by snVLanByIpSubnetExcludePortList)"
        ::= { snVLanByIpSubnetEntry 11 }

snVLanByIpSubnetChassisDynamicMask OBJECT-TYPE
        SYNTAX  OCTET STRING (SIZE(32))
        ACCESS  read-only
        STATUS  deprecated
        DESCRIPTION
                "The Chassis VLAN By Subnet active port membership.
                (It was obsoleted after release 07100, replaced by snVLanByIpSubnetDynamicPortList)"
        ::= { snVLanByIpSubnetEntry 12 }

snVLanByIpSubnetVLanName OBJECT-TYPE
        SYNTAX  DisplayString (SIZE(0..32))
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "VLAN Community Name string."
        ::= { snVLanByIpSubnetEntry 13 }

snVLanByIpSubnetStaticPortList OBJECT-TYPE
        SYNTAX  OCTET STRING
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "A list of port indices which are the configured port
                membership of the VLAN By IP Subnet. Each port index is a
                16-bit integer in big endian order. 8-bit is the slot number,
                the other 8-bit is the port number."
        ::= { snVLanByIpSubnetEntry 14 }

snVLanByIpSubnetExcludePortList OBJECT-TYPE
        SYNTAX  OCTET STRING
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "A list of port indices which are the excluded from port
                membership of the VLAN By IP Subnet. Each port index is a
                16-bit integer in big endian order. 8-bit is the slot number,
                the other 8-bit is the port number."
        ::= { snVLanByIpSubnetEntry 15 }

snVLanByIpSubnetDynamicPortList OBJECT-TYPE
        SYNTAX  OCTET STRING
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "A list of port indices which are dynamically joining the port
                membership of the VLAN By IP Subnet. Each port index is a
                16-bit integer in big endian order. 8-bit is the slot number,
                the other 8-bit is the port number."
        ::= { snVLanByIpSubnetEntry 16 }


-- VLAN By IPX Net Configuration Table


snVLanByIpxNetTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SnVLanByIpxNetEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "An entry of the VLAN By IPX Network Number Table."
        ::= { snVLanInfo 4 }


snVLanByIpxNetEntry OBJECT-TYPE
        SYNTAX  SnVLanByIpxNetEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "An entry in the VLAN By Ipx Network Number Configuration table. "
        INDEX   { 
                snVLanByIpxNetVLanId,
                snVLanByIpxNetNetworkNum,
                snVLanByIpxNetFrameType
        }
        ::= { snVLanByIpxNetTable 1 }


SnVLanByIpxNetEntry ::= SEQUENCE {
        snVLanByIpxNetVLanId
                INTEGER,
        snVLanByIpxNetNetworkNum
                OCTET STRING,
        snVLanByIpxNetFrameType
                INTEGER,
        snVLanByIpxNetDynamic
                INTEGER,
        snVLanByIpxNetStaticMask
                PortMask,
        snVLanByIpxNetExcludeMask
                PortMask,
        snVLanByIpxNetRouterIntf
                INTEGER,
        snVLanByIpxNetRowStatus
                INTEGER,
        snVLanByIpxNetDynamicMask
                PortMask,
        snVLanByIpxNetChassisStaticMask
                OCTET STRING,
        snVLanByIpxNetChassisExcludeMask
                OCTET STRING,
        snVLanByIpxNetChassisDynamicMask
                OCTET STRING,
        snVLanByIpxNetVLanName
                DisplayString,
        snVLanByIpxNetStaticPortList
                OCTET STRING,
        snVLanByIpxNetExcludePortList
                OCTET STRING,
        snVLanByIpxNetDynamicPortList
                OCTET STRING
        }

snVLanByIpxNetVLanId OBJECT-TYPE
        SYNTAX  INTEGER (1..4095)
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The VLAN ID index to both of the VLAN By Port Info Table
                 and this table."
        ::= { snVLanByIpxNetEntry 1 }


snVLanByIpxNetNetworkNum OBJECT-TYPE
        SYNTAX  OCTET STRING (SIZE(4))
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "IPX Network Number."
        ::= { snVLanByIpxNetEntry 2 }

snVLanByIpxNetFrameType OBJECT-TYPE
        SYNTAX  INTEGER {
            notApplicable(0),
                ipxEthernet8022(1),
            ipxEthernet8023(2),
            ipxEthernetII(3),
            ipxEthernetSnap(4)
                }
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                " The following IPX Frame types are operated 
                in Layer3 VLAN such as :  
                ipxEthernet8022(1), ipxEthernet8023(2),
            ipxEthernetII(3), ipxEthernetSnap(4).
            choose notApplicable(0) for other protocols.
            Note: Each Network Number can be assigned with one unique Frame type; Otherwise,
            a SNMP-SET error will be returned."
        ::= { snVLanByIpxNetEntry 3 }

snVLanByIpxNetDynamic OBJECT-TYPE
        SYNTAX  INTEGER {
                disabled(0),
            enabled(1)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                " disabled(0) : disabled dynamic port inclusion - applied to switch only.
                  enabled(1) : enabled dynamic port inclusion - applied to switch only. "
        ::= { snVLanByIpxNetEntry 4 }

snVLanByIpxNetStaticMask OBJECT-TYPE
        SYNTAX  PortMask
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
                "The VLAN By IPX network port membership applied in static mode.
                (It was obsoleted for Chassis Product)"
        ::= { snVLanByIpxNetEntry 5 }

snVLanByIpxNetExcludeMask OBJECT-TYPE
        SYNTAX  PortMask
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
                "The VLAN By IPX network port membership applied in exclusive mode.
                (It was obsoleted for Chassis Product)"
        ::= { snVLanByIpxNetEntry 6 }


snVLanByIpxNetRouterIntf OBJECT-TYPE
        SYNTAX  INTEGER (1..60)
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Optional: A virtual interface for router to the VLAN -- applied to router only.
                 If a SNMP-Get value is zero, that means this object was not configured."
        ::= { snVLanByIpxNetEntry 7 }


snVLanByIpxNetRowStatus OBJECT-TYPE
        SYNTAX  INTEGER {
                other(1),
                valid(2),
                delete(3),
                create(4),
                modify(5)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "This object is used to create and
                delete row in the table and control
                if they are used. The values
                that can be written are:
                  delete(3)...deletes the row
                  create(4)...creates a new row
                  modify(5)...modifies an exsisting row

                If the row exists, then a SET with
                value of create(4) returns error
                'badValue'. Deleted rows go away
                immediately. The following values
                can be returned on reads:
                  noSuch(0)...no such row
                  other(1)....some other case
                  valid(2)....the row exists and is valid"
        ::= { snVLanByIpxNetEntry 8 }

snVLanByIpxNetDynamicMask OBJECT-TYPE
        SYNTAX  PortMask
        ACCESS  read-only
        STATUS  deprecated
        DESCRIPTION
                "The VLAN By IPX network active port membership.
                (It was obsoleted for Chassis Product)"
        ::= { snVLanByIpxNetEntry 9 }

snVLanByIpxNetChassisStaticMask OBJECT-TYPE
        SYNTAX  OCTET STRING (SIZE(32))
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
                "The Chassis VLAN By IPX network port membership applied in static mode.
                (It was obsoleted after release 07100, replaced by snVLanByIpxNetStaticPortList)"
        ::= { snVLanByIpxNetEntry 10 }

snVLanByIpxNetChassisExcludeMask OBJECT-TYPE
        SYNTAX  OCTET STRING (SIZE(32))
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
                "The Chassis VLAN By IPX network port membership applied in exclusive mode.
                (It was obsoleted after release 07100, replaced by snVLanByIpxNetExcludePortList)"
        ::= { snVLanByIpxNetEntry 11 }

snVLanByIpxNetChassisDynamicMask OBJECT-TYPE
        SYNTAX  OCTET STRING (SIZE(32))
        ACCESS  read-only
        STATUS  deprecated
        DESCRIPTION
                "The Chassis VLAN By IPX network active port membership.
                (It was obsoleted after release 07100, replaced by snVLanByIpxNetDynamicPortList)"
        ::= { snVLanByIpxNetEntry 12 }

snVLanByIpxNetVLanName OBJECT-TYPE
        SYNTAX  DisplayString (SIZE(0..32))
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "VLAN Community Name string."
        ::= { snVLanByIpxNetEntry 13 }

snVLanByIpxNetStaticPortList OBJECT-TYPE
        SYNTAX  OCTET STRING
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "A list of port indices which are the configured port
                membership of the VLAN By IPX network. Each port index is a
                16-bit integer in big endian order. 8-bit is the slot number,
                the other 8-bit is the port number."
        ::= { snVLanByIpxNetEntry 14 }

snVLanByIpxNetExcludePortList OBJECT-TYPE
        SYNTAX  OCTET STRING
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "A list of port indices which are the excluded from port
                membership of the VLAN By IPX network. Each port index is a
                16-bit integer in big endian order. 8-bit is the slot number,
                the other 8-bit is the port number."
        ::= { snVLanByIpxNetEntry 15 }

snVLanByIpxNetDynamicPortList OBJECT-TYPE
        SYNTAX  OCTET STRING
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "A list of port indices which are dynamically joining the port
                membership of the VLAN By IPX network. Each port index is a
                16-bit integer in big endian order. 8-bit is the slot number,
                the other 8-bit is the port number."
        ::= { snVLanByIpxNetEntry 16 }


-- VLAN By AppleTalk Cable Configuration Table


snVLanByATCableTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SnVLanByATCableEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "A Table Of VLAN By AppleTalk Network Number."
        ::= { snVLanInfo 5 }

snVLanByATCableEntry OBJECT-TYPE
        SYNTAX  SnVLanByATCableEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "An entry of the AppleTalk Cable VLAN table."
        INDEX   {snVLanByATCableVLanId, snVLanByATCableIndex}
        ::= { snVLanByATCableTable 1 }

SnVLanByATCableEntry ::= SEQUENCE {
        snVLanByATCableVLanId
                INTEGER,
        snVLanByATCableIndex
                INTEGER,
        snVLanByATCableRouterIntf
                INTEGER,
        snVLanByATCableRowStatus
                INTEGER,
        snVLanByATCableChassisStaticMask
                OCTET STRING,
        snVLanByATCableVLanName
                DisplayString,
        snVLanByATCableStaticPortList
                OCTET STRING
        }

snVLanByATCableVLanId OBJECT-TYPE
        SYNTAX  INTEGER (1..4095)
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The VLAN ID of a PORT VLAN of which the AppleTalk Cable
                VLAN was attaching to."
        ::= { snVLanByATCableEntry 1 }

snVLanByATCableIndex OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "AppleTalk Cable VLAN index number."
        ::= { snVLanByATCableEntry 2 }

snVLanByATCableRouterIntf OBJECT-TYPE
        SYNTAX  INTEGER (0..60)
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "A virtual router interface to the AppleTalk Cable VLAN,
                only router products accept the SNMP-SET operation. The
                value zero indicates that virtual router interface was
                not configured."
        ::= { snVLanByATCableEntry 3 }

snVLanByATCableRowStatus OBJECT-TYPE
        SYNTAX  INTEGER {
                other(1),
                valid(2),
                delete(3),
                create(4),
                modify(5)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "This object is used to create and
                delete row in the table and control
                if they are used. The values
                that can be written are:
                  delete(3)...deletes the row
                  create(4)...creates a new row
                  modify(5)...modifies an exsisting row

                If the row exists, then a SET with
                value of create(4) returns error
                'badValue'. Deleted rows go away
                immediately. The following values
                can be returned on reads:
                  noSuch(0)...no such row
                  other(1)....some other case
                  valid(2)....the row exists and is valid"
        ::= { snVLanByATCableEntry 4 }

snVLanByATCableChassisStaticMask OBJECT-TYPE
        SYNTAX  OCTET STRING (SIZE(32))
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
                "A list of ports which are statically configured to
                become port members of a VLAN.
                (It was obsoleted after release 07100, replaced by snVLanByATCableStaticPortList)"
        ::= { snVLanByATCableEntry 5 }

snVLanByATCableVLanName OBJECT-TYPE
        SYNTAX  DisplayString (SIZE(0..32))
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "VLAN Name string."
        ::= { snVLanByATCableEntry 6 }

snVLanByATCableStaticPortList OBJECT-TYPE
        SYNTAX  OCTET STRING
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "A list of port indices which are the configured port
                membership of the AppleTalk Cable VLAN. Each port index is a
                16-bit integer in big endian order. 8-bit is the slot number,
                the other 8-bit is the port number."
        ::= { snVLanByATCableEntry 7 }




-- Switch Port Information Group

-- begin of deprecated snSwPortInfoTable
snSwPortInfoTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SnSwPortInfoEntry
        ACCESS  not-accessible
        STATUS  deprecated
        DESCRIPTION
                "A specific snSwPortInfo group consists of a number of 
                 switch ports.  "
        ::= { snSwPortInfo 1 }

snSwPortInfoEntry OBJECT-TYPE
        SYNTAX  SnSwPortInfoEntry
        ACCESS  not-accessible
        STATUS  deprecated
        DESCRIPTION
                "An entry in the snSwPortInfo table indicates the 
                 configuration on a specified port. A SNMP SET PDU 
                 for a row of the snSwPortInfoTable requires the entired 
                 sequence of the MIB Objects in each 
                 snSwPortInfoEntry stored in one PDU.  Otherwise, 
                 GENERR return-value will be returned."
        INDEX   { 
                snSwPortInfoPortNum
        }
        ::= { snSwPortInfoTable 1 }

SnSwPortInfoEntry ::= SEQUENCE {
        snSwPortInfoPortNum
                INTEGER,
        snSwPortInfoMonitorMode
            INTEGER,
        snSwPortInfoTagMode
                INTEGER,
        snSwPortInfoChnMode
            INTEGER,
        snSwPortInfoSpeed
            INTEGER,
    snSwPortInfoMediaType
            INTEGER,
        snSwPortInfoConnectorType
            INTEGER,
        snSwPortInfoAdminStatus
                INTEGER,
        snSwPortInfoLinkStatus
                INTEGER,
        snSwPortInfoPortQos
            INTEGER,
        snSwPortInfoPhysAddress
            PhysAddress,
    snSwPortStatsInFrames 
        Counter,
        snSwPortStatsOutFrames 
        Counter,
        snSwPortStatsAlignErrors            
                Counter,
    snSwPortStatsFCSErrors                  
                Counter,
    snSwPortStatsMultiColliFrames    
                Counter,
    snSwPortStatsFrameTooLongs              
                Counter,
        snSwPortStatsTxColliFrames
            Counter,
        snSwPortStatsRxColliFrames
            Counter,
        snSwPortStatsFrameTooShorts
            Counter,
        snSwPortLockAddressCount
            INTEGER,
        snSwPortStpPortEnable
            INTEGER,
    snSwPortDhcpGateListId
            INTEGER,
        snSwPortName
                DisplayString,
        snSwPortStatsInBcastFrames
            Counter,
        snSwPortStatsOutBcastFrames
            Counter,
        snSwPortStatsInMcastFrames
            Counter,
        snSwPortStatsOutMcastFrames
            Counter,
        snSwPortStatsInDiscard
            Counter,
        snSwPortStatsOutDiscard
            Counter,
        snSwPortStatsMacStations
            INTEGER,
        snSwPortCacheGroupId
            INTEGER,
        snSwPortTransGroupId
            INTEGER,
        snSwPortInfoAutoNegotiate
            INTEGER,
        snSwPortInfoFlowControl
            INTEGER,
        snSwPortInfoGigType
            INTEGER,
        snSwPortStatsLinkChange
            Counter,
        snSwPortIfIndex
            INTEGER,
        snSwPortDescr
            DisplayString,
        snSwPortInOctets
            OCTET STRING,
        snSwPortOutOctets
            OCTET STRING,
        snSwPortStatsInBitsPerSec
            Gauge,
        snSwPortStatsOutBitsPerSec
            Gauge,
        snSwPortStatsInPktsPerSec
            Gauge,
        snSwPortStatsOutPktsPerSec
            Gauge,
        snSwPortStatsInUtilization
            INTEGER (0..10000),
        snSwPortStatsOutUtilization
            INTEGER (0..10000),
        snSwPortFastSpanPortEnable
            INTEGER,
        snSwPortFastSpanUplinkEnable
            INTEGER,
        snSwPortVlanId
            INTEGER,
        snSwPortRouteOnly
            INTEGER,
        snSwPortPresent
            INTEGER,
        snSwPortGBICStatus
            INTEGER,
        snSwPortStatsInKiloBitsPerSec
                Unsigned32,
        snSwPortStatsOutKiloBitsPerSec    
                Unsigned32,
        snSwPortLoadInterval
            INTEGER (30..300),
        snSwPortTagType
            INTEGER,
        snSwPortInLinePowerControl
            INTEGER,
        snSwPortInLinePowerWattage
            INTEGER,
        snSwPortInLinePowerClass
            INTEGER,
        snSwPortInLinePowerPriority
            INTEGER,
        snSwPortInfoMirrorMode
            INTEGER,
        snSwPortStatsInJumboFrames
            Counter64,
        snSwPortStatsOutJumboFrames
            Counter64,
        snSwPortInLinePowerConsumed
            INTEGER,
        snSwPortInLinePowerPDType
            DisplayString
        }

snSwPortInfoPortNum OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-only
        STATUS  deprecated
        DESCRIPTION
                "The port index.
                 The bit 0 to bit 7: port number. 
                 The bit 8 to bit 11: slot number (slot for chassis only)."
        ::= { snSwPortInfoEntry 1 }


snSwPortInfoMonitorMode OBJECT-TYPE
        SYNTAX  INTEGER {
                disabled(0),
                input(1),
                output(2),
                both(3)
                }
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
                "DEPRECATED by snSwPortInfoMirrorMode and
                snPortMonitorTable."
        ::= { snSwPortInfoEntry 2 }


snSwPortInfoTagMode OBJECT-TYPE
        SYNTAX  INTEGER {
                tagged(1),      
                untagged(2),    
                auto(3),
                disabled(4)
                }
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
                "For tagged port, we could have multiple VLANs 
                 per port. For untagged port or auto port, there 
                 is only one VLAN ID per port."  
        ::= { snSwPortInfoEntry 3 }


snSwPortInfoChnMode OBJECT-TYPE
        SYNTAX  INTEGER {
        none(0),
                halfDuplex(1),  
                fullDuplex(2)   
                }
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
                "The port can be configured to operate in either
                half or full duplex mode. The values are:
                        halfDuplex(1)...half duplex mode
                        fullDuplex(2)...full duplex mode
                The read-back channel status from hardware are:
            none(0).........link down or port disabled.
                        halfDuplex(1)...half duplex mode
                        fullDuplex(2)...full duplex mode
                
                The port media type (expansion or regular)
                and port link type (trunk or feeder) determine
                value of this object.
                The port can not set to half duplex mode
                if the port connect mode is m200e(4).
                However, the value of this parameter may be
                automatically set whenever the expansion port
                is connected (e.g. cascade connecting device)."
        ::= { snSwPortInfoEntry 4 }


snSwPortInfoSpeed OBJECT-TYPE
        SYNTAX  INTEGER {
        none(0),
            sAutoSense(1),
                s10M(2),
                s100M(3),
                s1G(4),
                s1GM(5),
                s155M(6),
                s10G(7)
                }
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION     
                "The speed configuration for a port. The values are:
          none(0)..........link down or no traffic.
                  sAutoSense(1)....Auto-sensing 10 or 100Mbits.
                  s10M(2)..........10Mbits per second.
                  s100M(3).........100Mbits per second.
                  s1G(4)...........1Gbits per second.
                  s1GM(5)..........1Gbits per second master.
                  s155M(6).........155Mbits per second (ATM) (for expansion board only).
                  s10G(7)..........10Gbits per second.

         The read-back hardware status are the following:
          none(0)..........link down or no traffic.
                  s10M(2)..........10Mbits per second.
                  s100M(3).........100Mbits per second.
                  s1G(4)...........1Gbits per second.
                  s1GM(5)..........1Gbits per second master.
                  s155M(6).........155Mbits per second (ATM) (for expansion board only).
                  s10G(7)..........10Gbits per second.

                The port media type (expansion or regular)
                and port link type (trunk or feeder) determine
                whether this object can be written and the valid
                values.
                It is not allowed to change speed for trunks ports.
                For expansion ports, all of the above speed 
                can be set.
                However, the value of this parameter may be
                automatically set whenever the expansion port
                is connected (e.g. cascade connecting device)."
        ::= { snSwPortInfoEntry 5 }



snSwPortInfoMediaType OBJECT-TYPE
        SYNTAX  INTEGER {
                other(1),
                m100BaseTX(2),
                m100BaseFX(3),
                m1000BaseFX(4),
                mT3(5),
                m155ATM(6),
                m1000BaseTX(7),
                m622ATM(8),
                m155POS(9),
                m622POS(10),
                m2488POS(11),
                m10000BaseFX(12)
                }
        ACCESS  read-only
        STATUS  deprecated
        DESCRIPTION 
                "The media type for the port. The
                values are:
                  other(1).........other or unknown media.
                  m100BaseTX(2)....100Mbits per second copper.
                  m100BaseFX(3)....100Mbits per second fiber.
                  m1000BaseFX(4)...1Gbits per second fiber.
                  mT3(5)...........45Mbits per second (T3).
                  m155ATM(6).......155Mbits per second (ATM).
                  m1000BaseTX(7)...1Gbits per second copper.
                  m622ATM(8).......622Mbits per second (ATM).
                  m155POS(9).......155Mbits per second (POS).
                  m622POS(10)......622Mbits per second (POS).
                  m2488POS(11).....2488Mbits per second (POS).
                  m10000BaseFX(12).10Gbits per second fiber."
        ::= { snSwPortInfoEntry 6 }



snSwPortInfoConnectorType OBJECT-TYPE
        SYNTAX  INTEGER {
                other(1),
                copper(2),
                fiber(3)
                }
        ACCESS  read-only
        STATUS  deprecated
        DESCRIPTION 
                "The type of connector that the port offers.
                 The values are:
                  other(1)...........other or unknown connector
                  copper(2)..........Copper connector
                  fiber(3)...........Fiber connector
                 This describes the physical connector type"
        ::= { snSwPortInfoEntry 7 }


snSwPortInfoAdminStatus OBJECT-TYPE
    SYNTAX  INTEGER {
                up(1),       -- ready to pass packets
                down(2),
                testing(3)   -- in some test mode
                }
    ACCESS  read-write
    STATUS  deprecated
    DESCRIPTION
                "The desired state of all ports.  The
                testing(3) state indicates that no operational
                packets can be passed. 
                (same as ifAdminStatus in MIB-II)"
    ::= { snSwPortInfoEntry 8 }


snSwPortInfoLinkStatus OBJECT-TYPE
    SYNTAX  INTEGER {
        up(1),       -- ready to pass packets
        down(2),
        testing(3)   -- in some test mode
        }
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
        "The current operational state of the interface.
         The testing(3) state indicates that no operational
         packets can be passed. 
         (same as ifOperStatus in MIB-II)"
    ::= { snSwPortInfoEntry 9 }


snSwPortInfoPortQos OBJECT-TYPE
        SYNTAX  INTEGER {
                level0(0),
                level1(1),
                level2(2),
                level3(3),
                level4(4),
                level5(5),
                level6(6),
                level7(7)
                }
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
                "The Stand alone stackable switch Port Qos Priority values are:
                 low(0)   -- low prority
                 high(1) -- high prority.
                 The BigIron Port Qos Priority values are:
                level0(0), level1(1), level2(2), level3(3),
                level4(4), level5(5), level6(6), level7(7) "
        ::= { snSwPortInfoEntry 10 }


snSwPortInfoPhysAddress OBJECT-TYPE
        SYNTAX  PhysAddress
        ACCESS  read-only
        STATUS  deprecated
        DESCRIPTION
                "The port physical address. The physical address 
                represents the switch port."
        ::= { snSwPortInfoEntry 11 }



snSwPortStatsInFrames OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
        "The total number of packets received on the interface."
    ::= { snSwPortInfoEntry 12 }


snSwPortStatsOutFrames OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
        "The total number of packets transmitted out of the interface."
    ::= { snSwPortInfoEntry 13 }


snSwPortStatsAlignErrors   OBJECT-TYPE
     SYNTAX     Counter
     ACCESS     read-only
     STATUS     deprecated
     DESCRIPTION
                "dot3StatsAlignmentErrors : A count of frames 
                received on a particular interface that are 
                not an integral number of octets in length 
                and do not pass the FCS check.

                The count represented by an instance of this
                object is incremented when the alignmentError
                status is returned by the MAC service to the
                LLC (or other MAC user). Received frames for
                which multiple error conditions obtain are,
                according to the conventions of IEEE 802.3
                Layer Management, counted exclusively according
                to the error status presented to the LLC."
    ::= { snSwPortInfoEntry 14 }

snSwPortStatsFCSErrors   OBJECT-TYPE
     SYNTAX      Counter
     ACCESS      read-only
     STATUS      deprecated
     DESCRIPTION
                "dot3StatsFCSErrors : A count of frames received 
                on a particular interface that are an integral 
                number of octets in length but do not pass the 
                FCS check.

                The count represented by an instance of this
                object is incremented when the frameCheckError
                status is returned by the MAC service to the
                LLC (or other MAC user). Received frames for
                which multiple error conditions obtain are,
                according to the conventions of IEEE 802.3
                Layer Management, counted exclusively according
                to the error status presented to the LLC."
    ::= { snSwPortInfoEntry 15 }


snSwPortStatsMultiColliFrames   OBJECT-TYPE
     SYNTAX      Counter
     ACCESS      read-only
     STATUS      deprecated
     DESCRIPTION
                "dot3StatsMultipleCollisionFrames : 
                A count of successfully transmitted frames on
                a particular interface for which transmission
                is inhibited by more than one collision.

                A frame that is counted by an instance of this
                object is also counted by the corresponding
                instance of either the ifOutUcastPkts,
                ifOutMulticastPkts, or ifOutBroadcastPkts,
                and is not counted by the corresponding
                instance of the dot3StatsSingleCollisionFrames
                object."
    ::= { snSwPortInfoEntry 16 }


snSwPortStatsFrameTooLongs   OBJECT-TYPE
     SYNTAX    Counter
     ACCESS    read-only
     STATUS    deprecated
     DESCRIPTION
                "dot3StatsFrameTooLongs : A count of frames 
                received on a particular interface that 
                exceed the maximum permitted frame size.

                The count represented by an instance of this
                object is incremented when the frameTooLong
                status is returned by the MAC service to the
                LLC (or other MAC user). Received frames for
                which multiple error conditions obtain are,
                according to the conventions of IEEE 802.3
                Layer Management, counted exclusively according
                to the error status presented to the LLC."
    ::= { snSwPortInfoEntry 17 }


snSwPortStatsTxColliFrames   OBJECT-TYPE
     SYNTAX      Counter
     ACCESS      read-only
     STATUS      deprecated
     DESCRIPTION
                "A count of successfully transmitted frames on
                a particular interface for which transmission
                is inhibited by more than one collision.

                A frame that is counted by a combination of
                both dot3StatsSingleCollisionFrames and
                dot3StatsMultipleCollisionFrames objects."
    ::= { snSwPortInfoEntry 18 }

snSwPortStatsRxColliFrames   OBJECT-TYPE
     SYNTAX      Counter
     ACCESS      read-only
     STATUS      deprecated
     DESCRIPTION
                "A count of successfully received frames on
                a particular interface for which transmission
                is inhibited by more than one collision.  This
                object is not specified in dot3 but it has the
                same functionarity as snSwPortStatsTxColliFrames."
    ::= { snSwPortInfoEntry 19 }

snSwPortStatsFrameTooShorts   OBJECT-TYPE
     SYNTAX    Counter
     ACCESS    read-only
     STATUS    deprecated
     DESCRIPTION
                " A count of frames received on a particular 
                interface that below the minimum permitted 
                frame size."
    ::= { snSwPortInfoEntry 20 }

snSwPortLockAddressCount OBJECT-TYPE
     SYNTAX  INTEGER (0..2048)
     ACCESS  read-write
     STATUS  deprecated
     DESCRIPTION
                "The number of source MAC addresses are allowed
                for a port. Writing 0 to this object will allow
                any number of addresses."
    DEFVAL { 8 }
    ::= { snSwPortInfoEntry 21 }

snSwPortStpPortEnable OBJECT-TYPE
     SYNTAX  INTEGER {
               disabled(0),
               enabled(1)
             }
     ACCESS  read-write
     STATUS  deprecated
     DESCRIPTION
        "The enabled/disabled status of the port."
     REFERENCE
        "IEEE 802.1D-1990: Section 4.5.5.2, dot1dStpPortEnable"
     ::= { snSwPortInfoEntry 22 }

snSwPortDhcpGateListId OBJECT-TYPE
        SYNTAX  INTEGER (0..32)
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
                "The ID for a DHCP gateway list entry relative 
                 to this switch port. 0 = unset or no assigned ID"
        ::= { snSwPortInfoEntry 23 }

snSwPortName OBJECT-TYPE
        SYNTAX  DisplayString (SIZE(0..255))
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
                "Port Name string."
        ::= { snSwPortInfoEntry 24 }

snSwPortStatsInBcastFrames OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
        "The total number of broadcast packets received on the interface."
    ::= { snSwPortInfoEntry 25 }


snSwPortStatsOutBcastFrames OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
        "The total number of broadcast packets transmitted out of the interface."
    ::= { snSwPortInfoEntry 26 }

snSwPortStatsInMcastFrames OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
        "The total number of multicast packets received on the interface."
    ::= { snSwPortInfoEntry 27 }


snSwPortStatsOutMcastFrames OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
        "The total number of multicast packets transmitted out of the interface."
    ::= { snSwPortInfoEntry 28 }


snSwPortStatsInDiscard OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
        "The number of inbound packets which were chosen
         to be discarded even though no errors had been
         detected to prevent their being deliverable to a
         higher-layer protocol.  One possible reason for
         discarding such a packet could be to free up
         buffer space."
    ::= { snSwPortInfoEntry 29 }


snSwPortStatsOutDiscard OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
        "The number of outbound packets which were chosen
         to be discarded even though no errors had been
         detected to prevent their being transmitted.  One
         possible reason for discarding such a packet could
         be to free up buffer space."
    ::= { snSwPortInfoEntry 30 }

snSwPortStatsMacStations OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
        "The total number of MAC Stations connected to the interface."
    ::= { snSwPortInfoEntry 31 }


snSwPortCacheGroupId OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  deprecated
    DESCRIPTION
        "Cache Group ID for the interface."
    ::= { snSwPortInfoEntry 32 }

snSwPortTransGroupId OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  deprecated
    DESCRIPTION
        "Transparent Group ID for the interface."
    ::= { snSwPortInfoEntry 33 }

snSwPortInfoAutoNegotiate OBJECT-TYPE
        SYNTAX  INTEGER {
                disabled(0),
                enabled(1),
                negFullAuto(2),
                global(3),
                other(4)
                }
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
                "This feature only applies to Gigabit Ethernet ports. If set to
                disable(0), port will be put to non-negotiation mode. If set to
                enable(1), port will start auto-negotiation indefinitely until
                succeed. If set to negFullAuto(2), the port will start with auto-
                negotiation, if the negotiation failed, then it will automatically
                switch to non-negotiation mode. Stackable products (except TurboIron
                8) Gigabit Ethernet ports do not support negFullAuto(2). If set
                to global(3), port negotiation mode follows the value of
                snSwGlobalAutoNegotiate. Non-Gigabit Ethernet port returns
                the value other(4)."
    DEFVAL { global }
        ::= { snSwPortInfoEntry 34 }


snSwPortInfoFlowControl OBJECT-TYPE
        SYNTAX  INTEGER {
                disabled(0),
                enabled(1)
                }
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
                "Enable/Disbale port flow control."
    DEFVAL { enabled }
        ::= { snSwPortInfoEntry 35 }

snSwPortInfoGigType OBJECT-TYPE
        SYNTAX  INTEGER {
                m1000BaseSX(0),
                m1000BaseLX(1),
                m1000BaseLH(2),
                m1000BaseLHA(3),
                m1000BaseLHB(4),
                m1000BaseTX(5),
                m10000BaseSR(6),
                m10000BaseLR(7),
                m10000BaseER(8),
                sfpCWDM1470nm80Km(9),
                sfpCWDM1490nm80Km(10),
                sfpCWDM1510nm80Km(11),
                sfpCWDM1530nm80Km(12),
                sfpCWDM1550nm80Km(13),
                sfpCWDM1570nm80Km(14),
                sfpCWDM1590nm80Km(15),
                sfpCWDM1610nm80Km(16),
                sfpCWDM1470nm100Km(17),
                sfpCWDM1490nm100Km(18),
                sfpCWDM1510nm100Km(19),
                sfpCWDM1530nm100Km(20),
                sfpCWDM1550nm100Km(21),
                sfpCWDM1570nm100Km(22),
                sfpCWDM1590nm100Km(23),
                sfpCWDM1610nm100Km(24),
                m1000BaseLHX(25),
                notApplicable(255)
                }
        ACCESS  read-only
        STATUS  deprecated
        DESCRIPTION 
                "The media type for the port. The
                values are:
                  m1000BaseSX(0)....1Gbits per second fiber, with a short wavelength transceiver.
                  m1000BaseLX(1)....1Gbits per second fiber, with a long wavelength transceiver (3km).
                  m1000BaseLH(2)....1Gbits per second fiber, with a special wavelength transceiver (50km).
                  m1000BaseLHA(3)....1Gbits per second fiber, with a special wavelength transceiver (70km).
                  m1000BaseLHB(4)....1Gbits per second fiber, with a special wavelength transceiver (150km).
                  m1000BaseTX(5)....1Gbits per second copper (100meter).
                  m10000BaseSR(6)....10Gbits per second fiber, with a short range wavelength transceiver (100m).
                  m10000BaseLR(7)....10Gbits per second fiber, with a long range wavelength transceiver (10km).
                  m10000BaseER(8)....10Gbits per second fiber, with a extended range wavelength transceiver (40km).
                  sfpCWDM1470nm80Km(9)....1Gbits per second CWDM fiber, with a wavelength 1470nm, reach 80 kms.
                  sfpCWDM1490nm80Km(10)....1Gbits per second CWDM fiber, with a wavelength 1490nm, reach 80 kms.
                  sfpCWDM1510nm80Km(11)....1Gbits per second CWDM fiber, with a wavelength 1510nm, reach 80 kms.
                  sfpCWDM1530nm80Km(12)....1Gbits per second CWDM fiber, with a wavelength 1530nm, reach 80 kms.
                  sfpCWDM1550nm80Km(13)....1Gbits per second CWDM fiber, with a wavelength 1550nm, reach 80 kms.
                  sfpCWDM1570nm80Km(14)....1Gbits per second CWDM fiber, with a wavelength 1570nm, reach 80 kms.
                  sfpCWDM1590nm80Km(15)....1Gbits per second CWDM fiber, with a wavelength 1590nm, reach 80 kms.
                  sfpCWDM1610nm80Km(16)....1Gbits per second CWDM fiber, with a wavelength 1610nm, reach 80 kms.
                  sfpCWDM1470nm100Km(17)....1Gbits per second CWDM fiber, with a wavelength 1470nm, reach 100 kms.
                  sfpCWDM1490nm100Km(18)....1Gbits per second CWDM fiber, with a wavelength 1490nm, reach 100 kms.
                  sfpCWDM1510nm100Km(19)....1Gbits per second CWDM fiber, with a wavelength 1510nm, reach 100 kms.
                  sfpCWDM1530nm100Km(20)....1Gbits per second CWDM fiber, with a wavelength 1530nm, reach 100 kms.
                  sfpCWDM1550nm100Km(21)....1Gbits per second CWDM fiber, with a wavelength 1550nm, reach 100 kms.
                  sfpCWDM1570nm100Km(22)....1Gbits per second CWDM fiber, with a wavelength 1570nm, reach 100 kms.
                  sfpCWDM1590nm100Km(23)....1Gbits per second CWDM fiber, with a wavelength 1590nm, reach 100 kms.
                  sfpCWDM1610nm100Km(24)....1Gbits per second CWDM fiber, with a wavelength 1610nm, reach 100 kms.
                  m1000BaseLHX(25)...1Gbits per second fiber, with a special wavelength transceiver (150km).
                  notApplicable(255)....a non-gigabit port."
        ::= { snSwPortInfoEntry 36 }


snSwPortStatsLinkChange OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
        "The total number of link state change of the interface."
    ::= { snSwPortInfoEntry 37 }


snSwPortIfIndex OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
        "In order to identify a particular interface, this
                object shall identify the instance of the ifIndex
                object, defined in RFC 1213 and RFC 1573."
    ::= { snSwPortInfoEntry 38 }


snSwPortDescr OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
        "A textual string containing the slot/port information
        about the interface."
    ::= { snSwPortInfoEntry 39 }


snSwPortInOctets OBJECT-TYPE
    SYNTAX  OCTET STRING (SIZE(8))
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
        "The total number of octets received on the interface,
        including framing characters. This object is a 64-bit
                counter of the ifInOctets object, defined in RFC 1213.
                The octet string is in big-endian byte order."
    ::= { snSwPortInfoEntry 40 }


snSwPortOutOctets OBJECT-TYPE
    SYNTAX  OCTET STRING (SIZE(8))
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
        "The total number of octets transmitted out of the interface,
        including framing characters. This object is a 64-bit
                counter of the ifOutOctets object, defined in RFC 1213.
                The octet string is in big-endian byte order."
    ::= { snSwPortInfoEntry 41 }


snSwPortStatsInBitsPerSec OBJECT-TYPE
    SYNTAX  Gauge
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
        "The number of bits per second received on the interface
        over a 5 minutes interval."
    ::= { snSwPortInfoEntry 42 }


snSwPortStatsOutBitsPerSec OBJECT-TYPE
    SYNTAX  Gauge
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
        "The number of bits per second transmitted out of the interface
        over a 5 minutes interval."
    ::= { snSwPortInfoEntry 43 }


snSwPortStatsInPktsPerSec OBJECT-TYPE
    SYNTAX  Gauge
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
        "The number of packets per second received on the interface
        over a 5 minutes interval."
    ::= { snSwPortInfoEntry 44 }


snSwPortStatsOutPktsPerSec OBJECT-TYPE
    SYNTAX  Gauge
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
        "The number of packets per second transmitted out of the interface
        over a 5 minutes interval."
    ::= { snSwPortInfoEntry 45 }


snSwPortStatsInUtilization OBJECT-TYPE
    SYNTAX  INTEGER (0..10000)
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
        "The input network utilization in hundredths of a percent
        over a 5 minutes interval."
    ::= { snSwPortInfoEntry 46 }


snSwPortStatsOutUtilization OBJECT-TYPE
    SYNTAX  INTEGER (0..10000)
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
        "The output network utilization in hundredths of a percent
        over a 5 minutes interval."
    ::= { snSwPortInfoEntry 47 }

snSwPortFastSpanPortEnable OBJECT-TYPE
     SYNTAX  INTEGER {
               disabled(0),
               enabled(1)
             }
     ACCESS  read-write
     STATUS  deprecated
     DESCRIPTION
        "The enabled/disabled fast span port status of the port."
     ::= { snSwPortInfoEntry 48 }

snSwPortFastSpanUplinkEnable OBJECT-TYPE
     SYNTAX  INTEGER {
               disabled(0),
               enabled(1)
             }
     ACCESS  read-write
     STATUS  deprecated
     DESCRIPTION
        "The enabled/disabled fast span uplink status of the port."
     ::= { snSwPortInfoEntry 49 }

snSwPortVlanId OBJECT-TYPE
     SYNTAX  INTEGER (0..4095)
     ACCESS  read-write
     STATUS  deprecated
     DESCRIPTION
        "The ID of a VLAN of which this port is a member. Port must
        be untagged. For tagged port which belongs to multiple
        VLANs, this object return 0 which is an invalid VLAN ID
        value."
     ::= { snSwPortInfoEntry 50 }

snSwPortRouteOnly OBJECT-TYPE
     SYNTAX  INTEGER { disabled(0), enabled(1) }
     ACCESS  read-write
     STATUS  deprecated
     DESCRIPTION
        "Enable/Disable L2 switching of a routing switch port.
                By default, the routing switch performs routing first.
                If routing failed, it performs switching. Enable route
                only instrcuts the routing switch to perform routing
                only. For a L2 switching only product, reading this
                object always return 'disabled', writing 'enabled' to
                this object takes no effect."
     DEFVAL { disabled }
     ::= { snSwPortInfoEntry 51 }

snSwPortPresent OBJECT-TYPE
     SYNTAX  INTEGER {
               false(0),
               true(1)
             }
     ACCESS  read-only
     STATUS  deprecated
     DESCRIPTION
        "Indicate if the port is absent or present.
                 This object only valid for M4 module
                 "
     ::= { snSwPortInfoEntry 52 }

snSwPortGBICStatus OBJECT-TYPE
     SYNTAX  INTEGER {
               gbic(1),
               miniGBIC(2),
               empty(3),
               other(4)
             }
     ACCESS  read-only
     STATUS  deprecated
     DESCRIPTION
        "Indicate if the gig port has GBICs on them.
                 If set to  GBIC(1), it means that the port is GBIC.
                 If set to  miniGBIC(2), it means that the port miniGBIC.
                 If set to empty(3), it means that the GBIC is missing.
                 Value other(4) means that the port not a removable gig port.
                 "
     ::= { snSwPortInfoEntry 53 }

snSwPortStatsInKiloBitsPerSec OBJECT-TYPE
    SYNTAX  Unsigned32
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
        "Bit rate in kilobits per second received on the 10G and faster interface
        over a 5 minutes interval."
    ::= { snSwPortInfoEntry 54 }


snSwPortStatsOutKiloBitsPerSec OBJECT-TYPE
    SYNTAX  Unsigned32
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
        "Bit rate in kilobits per second transmitted out of the 10G and faster interface
        over a 5 minutes interval."
    ::= { snSwPortInfoEntry 55 }

snSwPortLoadInterval OBJECT-TYPE
     SYNTAX  INTEGER (30..300)
     ACCESS  read-write
     STATUS  deprecated
     DESCRIPTION
        "The time in seconds for which average port utilization should be carried out.
        The value should be incremental of 30 seconds, between the ranges specified."
     DEFVAL { 300 }
     ::= { snSwPortInfoEntry 56 }

snSwPortTagType OBJECT-TYPE
     SYNTAX  INTEGER
     ACCESS  read-write
     STATUS  deprecated
     DESCRIPTION
                "The IEEE802.1q tag type embedded in the length/type field of
                an Ethernet packet. It specifies that the 2 octets after the
                length/type field in an Ethernet packet is the tag value."
     DEFVAL { 33024 }
     ::= { snSwPortInfoEntry 57 }

snSwPortInLinePowerControl OBJECT-TYPE
     SYNTAX  INTEGER {
               other(1),
               disable(2),
               enable(3),
               enableLegacyDevice(4)
             }
     ACCESS  read-write
     STATUS  deprecated
     DESCRIPTION
                "Control inline power on/off to a port. If a port does not
                have inline power capability, reading this object returns
                'other(1)'."
     ::= { snSwPortInfoEntry 58 }

snSwPortInLinePowerWattage OBJECT-TYPE
     SYNTAX  INTEGER
     ACCESS  read-write
     STATUS  deprecated
     DESCRIPTION
                "Adjust the inline power wattage. Valid value between 
                1000 and 15400. Each unit is milliwatts.
                This object can only be set after snSwPortInLinePowerControl
                has been set to 'enable(3)' or 'enableLegacyDevice(4)'. If
                a port does not have inline power capability, reading this
                object returns undefined value."
     ::= { snSwPortInfoEntry 59 }

snSwPortInLinePowerClass OBJECT-TYPE
     SYNTAX  INTEGER (0..3)
     ACCESS  read-write
     STATUS  deprecated
     DESCRIPTION
                "Adjust the inline power class. This object can only be set
                after snSwPortInLinePowerControl has been set to 'enable(3)'
                or 'enableLegacyDevice(4)'. If a port does not have inline
                power capability, reading this object returns undefined value."
     ::= { snSwPortInfoEntry 60 }

snSwPortInLinePowerPriority OBJECT-TYPE
     SYNTAX  INTEGER {
               invalid(0),
               critical(1),
               high(2),
               low(3),
               medium(4),
               other(5)
             }
     ACCESS  read-write
     STATUS  deprecated
     DESCRIPTION
                "Inline power allocation priority for the power device
                 0- Not a POE port, 1- Critical, 2- High, 3- Low,
                 4- Medium, 5- other."
     ::= { snSwPortInfoEntry 61 }

snSwPortInfoMirrorMode OBJECT-TYPE
     SYNTAX  INTEGER {
               disable(0),
               enable(1)
             }
     ACCESS  read-write
     STATUS  deprecated
     DESCRIPTION
             "Enable/disable mirror on this port."
     ::= { snSwPortInfoEntry 62 }

snSwPortStatsInJumboFrames OBJECT-TYPE
    SYNTAX  Counter64
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
        "The total number of jumbo packets received on the interface."
    ::= { snSwPortInfoEntry 63 }

snSwPortStatsOutJumboFrames OBJECT-TYPE
    SYNTAX  Counter64
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
        "The total number of jumbo packets transmitted out of the interface."
    ::= { snSwPortInfoEntry 64 }

snSwPortInLinePowerConsumed OBJECT-TYPE
     SYNTAX  INTEGER
     ACCESS  read-only
     STATUS  deprecated
     DESCRIPTION
                "Inline power consumed by the port. Each unit is milliwatts."
     ::= { snSwPortInfoEntry 66 }

snSwPortInLinePowerPDType OBJECT-TYPE
         SYNTAX DisplayString
     ACCESS  read-only
     STATUS  deprecated
     DESCRIPTION
                "Inline Power device type       802.3af or Legacy device."
     ::= { snSwPortInfoEntry 67 }
-- end of deprecated snSwPortInfoTable


-- Switch Port Information Group
-- snSwIfInfoTable which is indexed by ifIndex port format is replacing the
-- snSwPortInfoTable which is indexed by a proprietary port format.

snSwIfInfoTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SnSwIfInfoEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "A specific snSwIfInfo group consists of a number of 
                 switch ports.  "
        ::= { snSwPortInfo 5 }

snSwIfInfoEntry OBJECT-TYPE
        SYNTAX  SnSwIfInfoEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "An entry in the snSwIfInfo table indicates the 
                 configuration on a specified port. A SNMP SET PDU 
                 for a row of the snSwIfInfoTable requires the entire 
                 sequence of the MIB Objects in each 
                 snSwIfInfoEntry stored in one PDU.  Otherwise, 
                 GENERR return-value will be returned."
        INDEX   { snSwIfInfoPortNum }
        ::= { snSwIfInfoTable 1 }

SnSwIfInfoEntry ::= SEQUENCE {
        snSwIfInfoPortNum
                InterfaceIndex,
        snSwIfInfoMonitorMode
            INTEGER,
        snSwIfInfoMirrorPorts
            OCTET STRING,
        snSwIfInfoTagMode
                INTEGER,
        snSwIfInfoTagType
            INTEGER,
        snSwIfInfoChnMode
            INTEGER,
        snSwIfInfoSpeed
            INTEGER,
    snSwIfInfoMediaType
            INTEGER,
        snSwIfInfoConnectorType
            INTEGER,
        snSwIfInfoAdminStatus
                INTEGER,
        snSwIfInfoLinkStatus
                INTEGER,
        snSwIfInfoPortQos
            INTEGER,
        snSwIfInfoPhysAddress
            PhysAddress,
        snSwIfLockAddressCount
            INTEGER,
        snSwIfStpPortEnable
            INTEGER,
    snSwIfDhcpGateListId
            INTEGER,
        snSwIfName
                DisplayString,
        snSwIfDescr
            DisplayString,
        snSwIfInfoAutoNegotiate
            INTEGER,
        snSwIfInfoFlowControl
            INTEGER,
        snSwIfInfoGigType
            INTEGER,
        snSwIfFastSpanPortEnable
            INTEGER,
        snSwIfFastSpanUplinkEnable
            INTEGER,
        snSwIfVlanId
            INTEGER,
        snSwIfRouteOnly
            INTEGER,
        snSwIfPresent
            INTEGER,
        snSwIfGBICStatus
            INTEGER,
        snSwIfLoadInterval
            INTEGER (30..300),
    snSwIfStatsInFrames 
        Counter32,
        snSwIfStatsOutFrames 
        Counter32,
        snSwIfStatsAlignErrors            
                Counter32,
    snSwIfStatsFCSErrors                  
                Counter32,
    snSwIfStatsMultiColliFrames    
                Counter32,
        snSwIfStatsTxColliFrames
            Counter32,
        snSwIfStatsRxColliFrames
            Counter32,
    snSwIfStatsFrameTooLongs              
                Counter32,
        snSwIfStatsFrameTooShorts
            Counter32,
        snSwIfStatsInBcastFrames
            Counter32,
        snSwIfStatsOutBcastFrames
            Counter32,
        snSwIfStatsInMcastFrames
            Counter32,
        snSwIfStatsOutMcastFrames
            Counter32,
        snSwIfStatsInDiscard
            Counter32,
        snSwIfStatsOutDiscard
            Counter32,
        snSwIfStatsMacStations
            INTEGER,
        snSwIfStatsLinkChange
            Counter32,
        snSwIfInOctets
            Counter64,
        snSwIfOutOctets
            Counter64,
        snSwIfStatsInBitsPerSec
            Gauge32,
        snSwIfStatsOutBitsPerSec
            Gauge32,
        snSwIfStatsInPktsPerSec
            Gauge32,
        snSwIfStatsOutPktsPerSec
            Gauge32,
        snSwIfStatsInUtilization
            INTEGER (0..10000),
        snSwIfStatsOutUtilization
            INTEGER (0..10000),
        snSwIfStatsInKiloBitsPerSec
                Unsigned32,
        snSwIfStatsOutKiloBitsPerSec    
                Unsigned32,
        snSwIfStatsInJumboFrames
            Counter64,
        snSwIfStatsOutJumboFrames
            Counter64,
        snSwIfInfoMirrorMode
            INTEGER
        }

snSwIfInfoPortNum OBJECT-TYPE
        SYNTAX  InterfaceIndex
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The port/interface index (ifindex)."
        ::= { snSwIfInfoEntry 1 }

snSwIfInfoMonitorMode OBJECT-TYPE
        SYNTAX  INTEGER {
                                disabled(0),
                                input(1),
                                output(2),
                                both(3)
                        }
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
                "DEPRECATED by snSwIf2MirrorMode and
                snPortMonitorTable."
        ::= { snSwIfInfoEntry 2 }

snSwIfInfoMirrorPorts OBJECT-TYPE
        SYNTAX          OCTET STRING
        ACCESS  read-write
        STATUS          mandatory
        DESCRIPTION
                "The list of port/interface index (ifindex), which mirror this interface,
                 when monitoring is enabled."
        ::= { snSwIfInfoEntry 3 }

snSwIfInfoTagMode OBJECT-TYPE
        SYNTAX  INTEGER {
                                tagged(1),      
                                untagged(2)
                        }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "For tagged port, we could have multiple VLANs 
                 per port. For untagged port, there 
                 is only one VLAN ID per port."  
        ::= { snSwIfInfoEntry 4 }

snSwIfInfoTagType OBJECT-TYPE
     SYNTAX  INTEGER
     ACCESS  read-write
     STATUS  mandatory
     DESCRIPTION
                "The IEEE802.1q tag type embedded in the length/type field of
                an Ethernet packet. It specifies that the 2 octets after the
                length/type field in an Ethernet packet is the tag value."
     DEFVAL { 33024 }
     ::= { snSwIfInfoEntry 5 }

snSwIfInfoChnMode OBJECT-TYPE
        SYNTAX  INTEGER {
                                none(0),
                                halfDuplex(1),  
                                fullDuplex(2)   
                        }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The port can be configured to operate in either
                half or full duplex mode. The values are:
                        halfDuplex(1)...half duplex mode
                        fullDuplex(2)...full duplex mode
                The read-back channel status from hardware are:
            none(0).........link down or port disabled.
                        halfDuplex(1)...half duplex mode
                        fullDuplex(2)...full duplex mode
                
                The port media type (expansion or regular)
                and port link type (trunk or feeder) determine
                value of this object.
                The port can not set to half duplex mode
                if the port connect mode is m200e(4).
                However, the value of this parameter may be
                automatically set whenever the expansion port
                is connected (e.g. cascade connecting device)."
        ::= { snSwIfInfoEntry 6 }

snSwIfInfoSpeed OBJECT-TYPE
        SYNTAX  INTEGER {
                                none(0),
                                sAutoSense(1),
                                s10M(2),
                                s100M(3),
                                s1G(4),
                                s1GM(5),
                                s155M(6),
                                s10G(7)
                        }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION     
                "The speed configuration for a port. The values are:
          none(0)..........link down or no traffic.
                  sAutoSense(1)....Auto-sensing 10 or 100Mbits.
                  s10M(2)..........10Mbits per second.
                  s100M(3).........100Mbits per second.
                  s1G(4)...........1Gbits per second.
                  s1GM(5)..........1Gbits per second master.
                  s155M(6).........155Mbits per second (ATM) (for expansion board only).
                  s10G(7)..........10Gbits per second.

         The read-back hardware status are the following:
          none(0)..........link down or no traffic.
                  s10M(2)..........10Mbits per second.
                  s100M(3).........100Mbits per second.
                  s1G(4)...........1Gbits per second.
                  s1GM(5)..........1Gbits per second master.
                  s155M(6).........155Mbits per second (ATM) (for expansion board only).
                  s10G(7)..........10Gbits per second.

                The port media type (expansion or regular)
                and port link type (trunk or feeder) determine
                whether this object can be written and the valid
                values.
                It is not allowed to change speed for trunks ports.
                For expansion ports, all of the above speed 
                can be set.
                However, the value of this parameter may be
                automatically set whenever the expansion port
                is connected (e.g. cascade connecting device)."
        ::= { snSwIfInfoEntry 7 }

snSwIfInfoMediaType OBJECT-TYPE
        SYNTAX  INTEGER {
                                other(1),
                                m100BaseTX(2),
                                m100BaseFX(3),
                                m1000BaseFX(4),
                                mT3(5),
                                m155ATM(6),
                                m1000BaseTX(7),
                                m622ATM(8),
                                m155POS(9),
                                m622POS(10),
                                m2488POS(11),
                                m10000BaseFX(12)
                        }
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION 
                "The media type for the port. The
                values are:
                  other(1).........other or unknown media.
                  m100BaseTX(2)....100Mbits per second copper.
                  m100BaseFX(3)....100Mbits per second fiber.
                  m1000BaseFX(4)...1Gbits per second fiber.
                  mT3(5)...........45Mbits per second (T3).
                  m155ATM(6).......155Mbits per second (ATM).
                  m1000BaseTX(7)...1Gbits per second copper.
                  m622ATM(8).......622Mbits per second (ATM).
                  m155POS(9).......155Mbits per second (POS).
                  m622POS(10)......622Mbits per second (POS).
                  m2488POS(11).....2488Mbits per second (POS).
                  m10000BaseFX(12).10Gbits per second fiber."
        ::= { snSwIfInfoEntry 8 }

snSwIfInfoConnectorType OBJECT-TYPE
        SYNTAX  INTEGER {
                                other(1),
                                copper(2),
                                fiber(3)
                        }
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION 
                "The type of connector that the port offers.
                 The values are:
                  other(1)...........other or unknown connector
                  copper(2)..........Copper connector
                  fiber(3)...........Fiber connector
                 This describes the physical connector type"
        ::= { snSwIfInfoEntry 9 }

snSwIfInfoAdminStatus OBJECT-TYPE
    SYNTAX  INTEGER {
                                up(1),       -- ready to pass packets
                                down(2),
                                testing(3)   -- in some test mode
                        }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
                "The desired state of all ports.  The
                testing(3) state indicates that no operational
                packets can be passed. 
                (same as ifAdminStatus in MIB-II)"
    ::= { snSwIfInfoEntry 10 }

snSwIfInfoLinkStatus OBJECT-TYPE
    SYNTAX  INTEGER {
                        up(1),       -- ready to pass packets
                        down(2),
                        testing(3)   -- in some test mode
                        }
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The current operational state of the interface.
         The testing(3) state indicates that no operational
         packets can be passed. 
         (same as ifOperStatus in MIB-II)"
    ::= { snSwIfInfoEntry 11 }

snSwIfInfoPortQos OBJECT-TYPE
        SYNTAX  INTEGER {
                                level0(0),
                                level1(1),
                                level2(2),
                                level3(3),
                                level4(4),
                                level5(5),
                                level6(6),
                                level7(7)
                        }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The Stand alone stackable switch Port Qos Priority values are:
                 low(0)   -- low prority
                 high(1) -- high prority.
                 The BigIron Port Qos Priority values are:
                level0(0), level1(1), level2(2), level3(3),
                level4(4), level5(5), level6(6), level7(7) "
        ::= { snSwIfInfoEntry 12 }

snSwIfInfoPhysAddress OBJECT-TYPE
        SYNTAX  PhysAddress
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The port physical address. The physical address 
                represents the switch port."
        ::= { snSwIfInfoEntry 13 }

snSwIfLockAddressCount OBJECT-TYPE
     SYNTAX  INTEGER (0..2048)
     ACCESS  read-write
     STATUS  mandatory
     DESCRIPTION
                "The number of source MAC addresses are allowed
                for a port. Writing 0 to this object will allow
                any number of addresses."
    DEFVAL { 8 }
    ::= { snSwIfInfoEntry 14 }

snSwIfStpPortEnable OBJECT-TYPE
     SYNTAX  INTEGER {
                                disabled(0),
                                enabled(1)
             }
     ACCESS  read-write
     STATUS  mandatory
     DESCRIPTION
        "The enabled/disabled status of the port."
     REFERENCE
        "IEEE 802.1D-1990: Section 4.5.5.2, dot1dStpPortEnable"
     ::= { snSwIfInfoEntry 15 }

snSwIfDhcpGateListId OBJECT-TYPE
        SYNTAX  INTEGER (0..32)
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The ID for a DHCP gateway list entry relative 
                 to this switch port. 0 = unset or no assigned ID"
        ::= { snSwIfInfoEntry 16 }

snSwIfName OBJECT-TYPE
        SYNTAX  DisplayString (SIZE(0..255))
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Port Name string."
        ::= { snSwIfInfoEntry 17 }

snSwIfDescr OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "A textual string containing the slot/port information
        about the interface."
    ::= { snSwIfInfoEntry 18 }

snSwIfInfoAutoNegotiate OBJECT-TYPE
        SYNTAX  INTEGER {
                                disabled(0),
                                enabled(1),
                                negFullAuto(2),
                                global(3),
                                other(4)
                        }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "This feature only applies to Gigabit Ethernet ports. If set to
                disable(0), port will be put to non-negotiation mode. If set to
                enable(1), port will start auto-negotiation indefinitely until
                succeed. If set to negFullAuto(2), the port will start with auto-
                negotiation, if the negotiation failed, then it will automatically
                switch to non-negotiation mode. Stackable products (except TurboIron
                8) Gigabit Ethernet ports do not support negFullAuto(2). If set
                to global(3), port negotiation mode follows the value of
                snSwGlobalAutoNegotiate. Non-Gigabit Ethernet port returns
                the value other(4)."
    DEFVAL { global }
        ::= { snSwIfInfoEntry 19 }

snSwIfInfoFlowControl OBJECT-TYPE
        SYNTAX  INTEGER {
                                disabled(0),
                                enabled(1)
                        }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Enable/Disbale port flow control."
    DEFVAL { enabled }
        ::= { snSwIfInfoEntry 20 }

snSwIfInfoGigType OBJECT-TYPE
        SYNTAX  INTEGER {
                                m1000BaseSX(0),
                                m1000BaseLX(1),
                                m1000BaseLH(2),
                                m1000BaseLHA(3),
                                m1000BaseLHB(4),
                                m1000BaseTX(5),
                                m10000BaseSR(6),
                                m10000BaseLR(7),
                                m10000BaseER(8),
                                sfpCWDM1470nm80Km(9),
                                sfpCWDM1490nm80Km(10),
                                sfpCWDM1510nm80Km(11),
                                sfpCWDM1530nm80Km(12),
                                sfpCWDM1550nm80Km(13),
                                sfpCWDM1570nm80Km(14),
                                sfpCWDM1590nm80Km(15),
                                sfpCWDM1610nm80Km(16),
                                sfpCWDM1470nm100Km(17),
                                sfpCWDM1490nm100Km(18),
                                sfpCWDM1510nm100Km(19),
                                sfpCWDM1530nm100Km(20),
                                sfpCWDM1550nm100Km(21),
                                sfpCWDM1570nm100Km(22),
                                sfpCWDM1590nm100Km(23),
                                sfpCWDM1610nm100Km(24),
                                m1000BaseLHX(25),
                                notApplicable(255)
                        }
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION 
                "The media type for the port. The
                values are:
                  m1000BaseSX(0)....1Gbits per second fiber, with a short wavelength transceiver.
                  m1000BaseLX(1)....1Gbits per second fiber, with a long wavelength transceiver (3km).
                  m1000BaseLH(2)....1Gbits per second fiber, with a special wavelength transceiver (50km).
                  m1000BaseLHA(3)....1Gbits per second fiber, with a special wavelength transceiver (70km).
                  m1000BaseLHB(4)....1Gbits per second fiber, with a special wavelength transceiver (150km).
                  m1000BaseTX(5)....1Gbits per second copper (100meter).
                  m10000BaseSR(6)....10Gbits per second fiber, with a short range wavelength transceiver (100m).
                  m10000BaseLR(7)....10Gbits per second fiber, with a long range wavelength transceiver (10km).
                  m10000BaseER(8)....10Gbits per second fiber, with a extended range wavelength transceiver (40km).
                  sfpCWDM1470nm80Km(9)....1Gbits per second CWDM fiber, with a wavelength 1470nm, reach 80 kms.
                  sfpCWDM1490nm80Km(10)....1Gbits per second CWDM fiber, with a wavelength 1490nm, reach 80 kms.
                  sfpCWDM1510nm80Km(11)....1Gbits per second CWDM fiber, with a wavelength 1510nm, reach 80 kms.
                  sfpCWDM1530nm80Km(12)....1Gbits per second CWDM fiber, with a wavelength 1530nm, reach 80 kms.
                  sfpCWDM1550nm80Km(13)....1Gbits per second CWDM fiber, with a wavelength 1550nm, reach 80 kms.
                  sfpCWDM1570nm80Km(14)....1Gbits per second CWDM fiber, with a wavelength 1570nm, reach 80 kms.
                  sfpCWDM1590nm80Km(15)....1Gbits per second CWDM fiber, with a wavelength 1590nm, reach 80 kms.
                  sfpCWDM1610nm80Km(16)....1Gbits per second CWDM fiber, with a wavelength 1610nm, reach 80 kms.
                  sfpCWDM1470nm100Km(17)....1Gbits per second CWDM fiber, with a wavelength 1470nm, reach 100 kms.
                  sfpCWDM1490nm100Km(18)....1Gbits per second CWDM fiber, with a wavelength 1490nm, reach 100 kms.
                  sfpCWDM1510nm100Km(19)....1Gbits per second CWDM fiber, with a wavelength 1510nm, reach 100 kms.
                  sfpCWDM1530nm100Km(20)....1Gbits per second CWDM fiber, with a wavelength 1530nm, reach 100 kms.
                  sfpCWDM1550nm100Km(21)....1Gbits per second CWDM fiber, with a wavelength 1550nm, reach 100 kms.
                  sfpCWDM1570nm100Km(22)....1Gbits per second CWDM fiber, with a wavelength 1570nm, reach 100 kms.
                  sfpCWDM1590nm100Km(23)....1Gbits per second CWDM fiber, with a wavelength 1590nm, reach 100 kms.
                  sfpCWDM1610nm100Km(24)....1Gbits per second CWDM fiber, with a wavelength 1610nm, reach 100 kms.
                  m1000BaseLHX(25)...1Gbits per second fiber, with a special wavelength transceiver (150km).
                  notApplicable(255)....a non-gigabit port."
        ::= { snSwIfInfoEntry 21 }

snSwIfFastSpanPortEnable OBJECT-TYPE
     SYNTAX  INTEGER {
                                disabled(0),
                                enabled(1)
             }
     ACCESS  read-write
     STATUS  mandatory
     DESCRIPTION
        "The enabled/disabled fast span port status of the port."
     ::= { snSwIfInfoEntry 22 }

snSwIfFastSpanUplinkEnable OBJECT-TYPE
     SYNTAX  INTEGER {
                                disabled(0),
                                enabled(1)
             }
     ACCESS  read-write
     STATUS  mandatory
     DESCRIPTION
        "The enabled/disabled fast span uplink status of the port."
     ::= { snSwIfInfoEntry 23 }

snSwIfVlanId OBJECT-TYPE
     SYNTAX  INTEGER (0..4095)
     ACCESS  read-write
     STATUS  mandatory
     DESCRIPTION
        "The ID of a VLAN of which this port is a member. Port must
        be untagged. For tagged port which belongs to multiple
        VLANs, this object return 0 which is an invalid VLAN ID
        value."
     ::= { snSwIfInfoEntry 24 }

snSwIfRouteOnly OBJECT-TYPE
     SYNTAX INTEGER {
                                disabled(0),
                                enabled(1)
                        }
     ACCESS  read-write
     STATUS  mandatory
     DESCRIPTION
        "Enable/Disable L2 switching of a routing switch port.
                By default, the routing switch performs routing first.
                If routing failed, it performs switching. Enable route
                only instrcuts the routing switch to perform routing
                only. For a L2 switching only product, reading this
                object always return 'disabled', writing 'enabled' to
                this object takes no effect."
     DEFVAL { disabled }
     ::= { snSwIfInfoEntry 25 }

snSwIfPresent OBJECT-TYPE
     SYNTAX  INTEGER {
                                false(0),
                                true(1)
             }
     ACCESS  read-only
     STATUS  mandatory
     DESCRIPTION
        "Indicate if the port is absent or present.
                 This object only valid for M4 module."
     ::= { snSwIfInfoEntry 26 }

snSwIfGBICStatus OBJECT-TYPE
     SYNTAX  INTEGER {
                                gbic(1),
                                miniGBIC(2),
                                empty(3),
                                other(4)
             }
     ACCESS  read-only
     STATUS  mandatory
     DESCRIPTION
        "Indicate if the gig port has GBICs on them.
                 If set to  GBIC(1), it means that the port is GBIC.
                 If set to  miniGBIC(2), it means that the port miniGBIC.
                 If set to empty(3), it means that the GBIC is missing.
                 Value other(4) means that the port not a removable gig port.
                 "
     ::= { snSwIfInfoEntry 27 }

snSwIfLoadInterval OBJECT-TYPE
     SYNTAX  INTEGER (30..300)
     ACCESS  read-write
     STATUS  mandatory
     DESCRIPTION
        "The time in seconds for which average port utilization should be carried out.
        The value should be incremental of 30 seconds, between the ranges specified."
     DEFVAL { 300 }
     ::= { snSwIfInfoEntry 28 }

snSwIfStatsInFrames OBJECT-TYPE
    SYNTAX  Counter32
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The total number of packets received on the interface."
    ::= { snSwIfInfoEntry 29 }

snSwIfStatsOutFrames OBJECT-TYPE
    SYNTAX  Counter32
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The total number of packets transmitted out of the interface."
    ::= { snSwIfInfoEntry 30 }

snSwIfStatsAlignErrors   OBJECT-TYPE
     SYNTAX     Counter32
     ACCESS     read-only
     STATUS     mandatory
     DESCRIPTION
                "dot3StatsAlignmentErrors : A count of frames 
                received on a particular interface that are 
                not an integral number of octets in length 
                and do not pass the FCS check.

                The count represented by an instance of this
                object is incremented when the alignmentError
                status is returned by the MAC service to the
                LLC (or other MAC user). Received frames for
                which multiple error conditions obtain are,
                according to the conventions of IEEE 802.3
                Layer Management, counted exclusively according
                to the error status presented to the LLC."
    ::= { snSwIfInfoEntry 31 }

snSwIfStatsFCSErrors   OBJECT-TYPE
     SYNTAX      Counter32
     ACCESS      read-only
     STATUS      mandatory
     DESCRIPTION
                "dot3StatsFCSErrors : A count of frames received 
                on a particular interface that are an integral 
                number of octets in length but do not pass the 
                FCS check.

                The count represented by an instance of this
                object is incremented when the frameCheckError
                status is returned by the MAC service to the
                LLC (or other MAC user). Received frames for
                which multiple error conditions obtain are,
                according to the conventions of IEEE 802.3
                Layer Management, counted exclusively according
                to the error status presented to the LLC."
    ::= { snSwIfInfoEntry 32 }

snSwIfStatsMultiColliFrames   OBJECT-TYPE
     SYNTAX      Counter32
     ACCESS      read-only
     STATUS      mandatory
     DESCRIPTION
                "dot3StatsMultipleCollisionFrames : 
                A count of successfully transmitted frames on
                a particular interface for which transmission
                is inhibited by more than one collision.

                A frame that is counted by an instance of this
                object is also counted by the corresponding
                instance of either the ifOutUcastPkts,
                ifOutMulticastPkts, or ifOutBroadcastPkts,
                and is not counted by the corresponding
                instance of the dot3StatsSingleCollisionFrames
                object."
    ::= { snSwIfInfoEntry 33 }

snSwIfStatsTxColliFrames   OBJECT-TYPE
     SYNTAX      Counter32
     ACCESS      read-only
     STATUS      mandatory
     DESCRIPTION
                "A count of successfully transmitted frames on
                a particular interface for which transmission
                is inhibited by more than one collision.

                A frame that is counted by a combination of
                both dot3StatsSingleCollisionFrames and
                dot3StatsMultipleCollisionFrames objects."
    ::= { snSwIfInfoEntry 34 }

snSwIfStatsRxColliFrames   OBJECT-TYPE
     SYNTAX      Counter32
     ACCESS      read-only
     STATUS      mandatory
     DESCRIPTION
                "A count of successfully received frames on
                a particular interface for which transmission
                is inhibited by more than one collision.  This
                object is not specified in dot3 but it has the
                same functionarity as snSwIfStatsTxColliFrames."
    ::= { snSwIfInfoEntry 35 }

snSwIfStatsFrameTooLongs   OBJECT-TYPE
     SYNTAX    Counter32
     ACCESS    read-only
     STATUS    mandatory
     DESCRIPTION
                "dot3StatsFrameTooLongs : A count of frames 
                received on a particular interface that 
                exceed the maximum permitted frame size.

                The count represented by an instance of this
                object is incremented when the frameTooLong
                status is returned by the MAC service to the
                LLC (or other MAC user). Received frames for
                which multiple error conditions obtain are,
                according to the conventions of IEEE 802.3
                Layer Management, counted exclusively according
                to the error status presented to the LLC."
    ::= { snSwIfInfoEntry 36 }
    
snSwIfStatsFrameTooShorts   OBJECT-TYPE
     SYNTAX    Counter32
     ACCESS    read-only
     STATUS    mandatory
     DESCRIPTION
                " A count of frames received on a particular 
                interface that below the minimum permitted 
                frame size."
    ::= { snSwIfInfoEntry 37 }
    
snSwIfStatsInBcastFrames OBJECT-TYPE
    SYNTAX  Counter32
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The total number of broadcast packets received on the interface."
    ::= { snSwIfInfoEntry 38 }

snSwIfStatsOutBcastFrames OBJECT-TYPE
    SYNTAX  Counter32
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The total number of broadcast packets transmitted out of the interface."
    ::= { snSwIfInfoEntry 39 }

snSwIfStatsInMcastFrames OBJECT-TYPE
    SYNTAX  Counter32
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The total number of multicast packets received on the interface."
    ::= { snSwIfInfoEntry 40 }

snSwIfStatsOutMcastFrames OBJECT-TYPE
    SYNTAX  Counter32
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The total number of multicast packets transmitted out of the interface."
    ::= { snSwIfInfoEntry 41 }

snSwIfStatsInDiscard OBJECT-TYPE
    SYNTAX  Counter32
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The number of inbound packets which were chosen
         to be discarded even though no errors had been
         detected to prevent their being deliverable to a
         higher-layer protocol.  One possible reason for
         discarding such a packet could be to free up
         buffer space."
    ::= { snSwIfInfoEntry 42 }

snSwIfStatsOutDiscard OBJECT-TYPE
    SYNTAX  Counter32
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The number of outbound packets which were chosen
         to be discarded even though no errors had been
         detected to prevent their being transmitted.  One
         possible reason for discarding such a packet could
         be to free up buffer space."
    ::= { snSwIfInfoEntry 43 }

snSwIfStatsMacStations OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The total number of MAC Stations connected to the interface."
    ::= { snSwIfInfoEntry 44 }

snSwIfStatsLinkChange OBJECT-TYPE
    SYNTAX  Counter32
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The total number of link state change of the interface."
    ::= { snSwIfInfoEntry 45 }

snSwIfInOctets OBJECT-TYPE
    SYNTAX  Counter64
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The total number of octets received on the interface,
        including framing characters. This object is a 64-bit
                counter of the ifInOctets object, defined in RFC 1213.
                The octet string is in big-endian byte order."
    ::= { snSwIfInfoEntry 46 }

snSwIfOutOctets OBJECT-TYPE
    SYNTAX  Counter64
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The total number of octets transmitted out of the interface,
        including framing characters. This object is a 64-bit
                counter of the ifOutOctets object, defined in RFC 1213.
                The octet string is in big-endian byte order."
    ::= { snSwIfInfoEntry 47 }

snSwIfStatsInBitsPerSec OBJECT-TYPE
    SYNTAX  Gauge32
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The number of bits per second received on the interface
        over a 5 minutes interval."
    ::= { snSwIfInfoEntry 48 }

snSwIfStatsOutBitsPerSec OBJECT-TYPE
    SYNTAX  Gauge32
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The number of bits per second transmitted out of the interface
        over a 5 minutes interval."
    ::= { snSwIfInfoEntry 49 }

snSwIfStatsInPktsPerSec OBJECT-TYPE
    SYNTAX  Gauge32
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The number of packets per second received on the interface
        over a 5 minutes interval."
    ::= { snSwIfInfoEntry 50 }

snSwIfStatsOutPktsPerSec OBJECT-TYPE
    SYNTAX  Gauge32
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The number of packets per second transmitted out of the interface
        over a 5 minutes interval."
    ::= { snSwIfInfoEntry 51 }

snSwIfStatsInUtilization OBJECT-TYPE
    SYNTAX  INTEGER (0..10000)
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The input network utilization in hundredths of a percent
        over a 5 minutes interval."
    ::= { snSwIfInfoEntry 52 }

snSwIfStatsOutUtilization OBJECT-TYPE
    SYNTAX  INTEGER (0..10000)
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The output network utilization in hundredths of a percent
        over a 5 minutes interval."
    ::= { snSwIfInfoEntry 53 }
    
snSwIfStatsInKiloBitsPerSec OBJECT-TYPE
    SYNTAX  Unsigned32
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "Bit rate in kilobits per second received on the 10G and
         faster interface over a 5 minutes interval."
    ::= { snSwIfInfoEntry 54 }

snSwIfStatsOutKiloBitsPerSec OBJECT-TYPE
    SYNTAX  Unsigned32
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "Bit rate in kilobits per second transmitted out of the 10G
         and faster interface over a 5 minutes interval."
    ::= { snSwIfInfoEntry 55 }

snSwIfStatsInJumboFrames OBJECT-TYPE
    SYNTAX  Counter64
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The total number of jumbo packets received on the interface."
    ::= { snSwIfInfoEntry 56 }

snSwIfStatsOutJumboFrames OBJECT-TYPE
    SYNTAX  Counter64
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The total number of jumbo packets transmitted out of the interface."
    ::= { snSwIfInfoEntry 57 }

snSwIfInfoMirrorMode OBJECT-TYPE
     SYNTAX  INTEGER {
               disable(0),
               enable(1)
             }
     ACCESS  read-write
     STATUS  mandatory
     DESCRIPTION
             "Enable/disable mirror on this port."
     ::= { snSwIfInfoEntry 58 }

-- Interface ID Registration Group

snInterfaceId      OBJECT IDENTIFIER ::= { snSwPortInfo 2 }

-- Interface ID to ifIndex Lookup Table
-- Given an interface ID, this table returns the ifIndex value.
-- 
-- Note: This table does not behave like most SNMP tables.  It does not
-- support GetNext.  If you try to walk the table using GetNext, no rows
-- will be returned.  The contents of the table can only be accessed
-- using Get operations.  The table is useful for mapping a known
-- interface to the corresponding ifIndex value.

snInterfaceLookupTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SnInterfaceLookupEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                ""
        ::= { snSwPortInfo 3 }

snInterfaceLookupEntry OBJECT-TYPE
        SYNTAX  SnInterfaceLookupEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                ""
        INDEX { snInterfaceLookupInterfaceId }
        ::= { snInterfaceLookupTable 1 }

SnInterfaceLookupEntry ::= SEQUENCE {
        snInterfaceLookupInterfaceId
                InterfaceId,
        snInterfaceLookupIfIndex
            INTEGER
        }

snInterfaceLookupInterfaceId OBJECT-TYPE
     SYNTAX  InterfaceId
     ACCESS  read-only
     STATUS  mandatory
     DESCRIPTION
        ""
     ::= { snInterfaceLookupEntry 1 }

snInterfaceLookupIfIndex OBJECT-TYPE
     SYNTAX  INTEGER
     ACCESS  read-only
     STATUS  mandatory
     DESCRIPTION
        ""
     ::= { snInterfaceLookupEntry 2 }


-- ifIndex to Interface ID Lookup Table
-- Given an ifIndex, this table returns the interface ID value.

snIfIndexLookupTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SnIfIndexLookupEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                ""
        ::= { snSwPortInfo 4 }

snIfIndexLookupEntry OBJECT-TYPE
        SYNTAX  SnIfIndexLookupEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                ""
        INDEX { snIfIndexLookupIfIndex }
        ::= { snIfIndexLookupTable 1 }

SnIfIndexLookupEntry ::= SEQUENCE {
        snIfIndexLookupIfIndex
            INTEGER,
        snIfIndexLookupInterfaceId
                InterfaceId
        }

snIfIndexLookupIfIndex OBJECT-TYPE
     SYNTAX  INTEGER
     ACCESS  read-only
     STATUS  mandatory
     DESCRIPTION
        ""
     ::= { snIfIndexLookupEntry 1 }

snIfIndexLookupInterfaceId OBJECT-TYPE
     SYNTAX  InterfaceId
     ACCESS  read-only
     STATUS  mandatory
     DESCRIPTION
        ""
     ::= { snIfIndexLookupEntry 2 }


--      Forwarding Database Group
--
-- This group contains information relevant to 
-- the forwarding database in the system.



-- The Forward Database Static Table Information
--
-- This table contains all MAC addresses in the system. Static 
-- stations may be configured.


snFdbTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SnFdbEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "This table contains snFdb information for each station
                known to the system, one entry per station." 
        ::= { snFdbInfo 1 }

snFdbEntry OBJECT-TYPE
        SYNTAX  SnFdbEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "Each entry represents the information of a static MAC station." 
        INDEX   { 
                snFdbStationIndex
        }
        ::= { snFdbTable 1 }


SnFdbEntry ::= SEQUENCE {
    snFdbStationIndex
                INTEGER,
    snFdbStationAddr
            PhysAddress,
        snFdbStationPort
                INTEGER,
        snFdbVLanId
                INTEGER,
        snFdbStationQos
                INTEGER,
        snFdbStationType
                INTEGER,
        snFdbRowStatus
                INTEGER
        }

snFdbStationIndex OBJECT-TYPE
        SYNTAX  INTEGER (1..256)
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The FDB Station index to the Fdb Station Table."
        ::= { snFdbEntry 1 }

snFdbStationAddr OBJECT-TYPE
        SYNTAX  PhysAddress
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The snFdbs physical address. The physical address 
                represents a MAC Station."
        ::= { snFdbEntry 2 }


snFdbStationPort OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Station slot/port number. 
                 The bit 0 to bit 7: port number. 
                 The bit 8 to bit 11: slot number (slot for chassis only)."
        ::= { snFdbEntry 3 }


snFdbVLanId OBJECT-TYPE
        SYNTAX  INTEGER (1..65535)
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The Station VLan ID."
        ::= { snFdbEntry 4 }

snFdbStationQos OBJECT-TYPE
        SYNTAX  INTEGER {
                level0(0),
                level1(1),
                level2(2),
                level3(3),
                level4(4),
                level5(5),
                level6(6),
                level7(7)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The Stand alone stackable station Qos Priority values are:
                 low(0)   -- low prority
                 high(1) -- high prority.
                 The BigIron switch station Priority values are:
                level0(0), level1(1), level2(2), level3(3),
                level4(4), level5(5), level6(6), level7(7) "
        ::= { snFdbEntry 5 }

snFdbStationType OBJECT-TYPE
        SYNTAX  INTEGER {
                notSupported(0),
                host(1),
                router(2)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The station type values are:
                 notSupported    -- a read value only : this product does not 
                                    support MultiLayer Switching.
                 host    -- any MAC station.
                 router  -- a router-typed station."
        ::= { snFdbEntry 6 }

snFdbRowStatus OBJECT-TYPE
        SYNTAX  INTEGER {
                other(1),
                valid(2),
                delete(3),
                create(4)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "This object is used to create and
                delete row in the table and control
                if they are used. The values
                that can be written are:
                  delete(3)...deletes the row
                  create(4)...creates a new row

                If the row exists, then a SET with
                value of create(4) returns error
                'badValue'. Deleted rows go away
                immediately. The following values
                can be returned on reads:
                  noSuch(0)...no such row
                  other(1)....some other case
                  valid(2)....the row exists and is valid"
        ::= { snFdbEntry 7 }


-- Port STP Configuration Group
-- snPortStpTable was deprecated. It has been replaced by snIfStpTable.


snPortStpTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SnPortStpEntry
        ACCESS  not-accessible
        STATUS  deprecated
        DESCRIPTION
                "A specific snPortStpTable consists of a number of 
                 switch ports. This table only exists if only if
                 snVLanByPortCfgTable exists and snVLanByPortCfgStpMode is
                 enabled for each VLAN."
        ::= { snPortStpInfo 1 }

snPortStpEntry OBJECT-TYPE
        SYNTAX  SnPortStpEntry
        ACCESS  not-accessible
        STATUS  deprecated
        DESCRIPTION
                "An entry in the snPortStpTable indicates the 
                 configuration on a specified port. A SNMP SET PDU 
                 for a row of the snPortStpTable requires the entired 
                 sequence of the MIB Objects in each 
                 snPortStpEntry stored in one PDU.  Otherwise, 
                 GENERR return-value will be returned."
        INDEX   { 
                        snPortStpVLanId,        
                        snPortStpPortNum
        }
        ::= { snPortStpTable 1 }

SnPortStpEntry ::= SEQUENCE {
        snPortStpVLanId
                INTEGER,
        snPortStpPortNum
                INTEGER,
        snPortStpPortPriority
                INTEGER,
        snPortStpPathCost 
                INTEGER,
    snPortStpOperState
                INTEGER,
    snPortStpPortEnable
        INTEGER,
    snPortStpPortForwardTransitions
        Counter,
    snPortStpPortState
        INTEGER,
    snPortStpPortDesignatedCost
        INTEGER,
    snPortStpPortDesignatedRoot
        BridgeId,
    snPortStpPortDesignatedBridge
        BridgeId,
    snPortStpPortDesignatedPort
        OCTET STRING,
    snPortStpPortAdminRstp
        INTEGER,
    snPortStpPortProtocolMigration
        INTEGER,
    snPortStpPortAdminEdgePort
        INTEGER,
    snPortStpPortAdminPointToPoint
        INTEGER
        }

snPortStpVLanId OBJECT-TYPE
        SYNTAX  INTEGER (1..65535)
        ACCESS  read-only
        STATUS  deprecated
        DESCRIPTION
                "The VLAN ID of the VLAN switch community." 
        ::= { snPortStpEntry 1 }

snPortStpPortNum OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-only
        STATUS  deprecated
        DESCRIPTION
                "The port number of the Switch. 
                 The bit 0 to bit 7: port number. 
                 The bit 8 to bit 11: slot number (slot for chassis only)."
        ::= { snPortStpEntry 2 }

snPortStpPortPriority OBJECT-TYPE
        SYNTAX  INTEGER (8..255)
        ACCESS  read-write
        STATUS  deprecated
        DESCRIPTION
    "The value of the priority field which is
     contained in the first (in network byte order)
     octet of the (2 octet long) Port ID.  The other
     octet of the Port ID is given by the value of
     dot1dStpPort."
        ::= { snPortStpEntry 3 }

snPortStpPathCost OBJECT-TYPE
    SYNTAX  INTEGER (0..65535)
    ACCESS  read-write
    STATUS  deprecated
    DESCRIPTION
        "dot1dStpPortPathCost : The contribution of this 
         port to the path cost of paths towards the spanning 
         tree root which include this port.  802.1D-1990 
         recommends that the default value of this parameter 
         be in inverse proportion to the speed of the 
         attached LAN. Writing value zero to this object
         sets path cost to a default value which automatically
         changes according to port speed. Reading value zero
         indicates an unknown path cost value because port
         speed cannot be determined due to speed auto sense
         in progress."
        ::= { snPortStpEntry 4 }


snPortStpOperState OBJECT-TYPE
        SYNTAX  INTEGER {
                notActivated(0),             
                activated(1)
                }
        ACCESS  read-only
        STATUS  deprecated
        DESCRIPTION
                "By default, this mode is set to notActivated(0).
                 notActivated(0)...the Port STP entry is not activated and not in running mode.
                 activated(1)......the Port STP entry is activated and in running mode"  
        ::= { snPortStpEntry 5 }

snPortStpPortEnable OBJECT-TYPE
    SYNTAX  INTEGER {
              enabled(1),
              disabled(2)
            }
    ACCESS  not-accessible
    STATUS  deprecated
    DESCRIPTION
    "The enabled/disabled status of the port."
        ::= { snPortStpEntry 6 }

snPortStpPortForwardTransitions OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  not-accessible
    STATUS  deprecated
    DESCRIPTION
    "The number of times this port has transitioned
     from the Learning state to the Forwarding state."
        ::= { snPortStpEntry 7 }

snPortStpPortState OBJECT-TYPE
    SYNTAX  INTEGER {
              disabled(1),
              blocking(2),
              listening(3),
              learning(4),
              forwarding(5),
              broken(6),
              preforwarding(7)
            }
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
    "The port's current state as defined by
     application of the Spanning Tree Protocol.  This
     state controls what action a port takes on
     reception of a frame.  If the bridge has detected
     a port that is malfunctioning it will place that
     port into the broken(6) state.  For ports which
     are disabled (see dot1dStpPortEnable), this object
     will have a value of disabled(1)."
        ::= { snPortStpEntry 8 }

snPortStpPortDesignatedCost OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
    "The path cost of the Designated Port of the
     segment connected to this port.  This value is
     compared to the Root Path Cost field in received
     bridge PDUs."
        ::= { snPortStpEntry 9 }


snPortStpPortDesignatedRoot OBJECT-TYPE
    SYNTAX  BridgeId
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
    "The unique Bridge Identifier of the Bridge
     recorded as the Root in the Configuration BPDUs
     transmitted by the Designated Bridge for the
     segment to which the port is attached."
        ::= { snPortStpEntry 10 }

snPortStpPortDesignatedBridge OBJECT-TYPE
    SYNTAX  BridgeId
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
    "The Bridge Identifier of the bridge which this
     port considers to be the Designated Bridge for
     this port's segment."
        ::= { snPortStpEntry 11 }

snPortStpPortDesignatedPort OBJECT-TYPE
    SYNTAX  OCTET STRING (SIZE (2))
    ACCESS  read-only
    STATUS  deprecated
    DESCRIPTION
    "The Port Identifier of the port on the Designated
     Bridge for this port's segment."
        ::= { snPortStpEntry 12 }

snPortStpPortAdminRstp OBJECT-TYPE
    SYNTAX  INTEGER {
              true(1),
              false(2)
            }
    ACCESS  read-write
    STATUS  deprecated
    DESCRIPTION
    "Enable or disable RSTP of a port which is a member of a VLAN.
    If the VLAN is not operating in RSTP, this object will return
    FALSE(2) and this object is not writable."
        ::= { snPortStpEntry 13 }

snPortStpPortProtocolMigration OBJECT-TYPE
    SYNTAX  INTEGER {
              true(1),
              false(2)
            }
    ACCESS  read-write
    STATUS  deprecated
    DESCRIPTION
    "When operating in RSTP (version 2) mode, writing TRUE(1)
     to this object forces this port to transmit RSTP BPDUs.
     Any other operation on this object has no effect and
     it always returns FALSE(2) when read."
        ::= { snPortStpEntry 14 }

snPortStpPortAdminEdgePort OBJECT-TYPE
    SYNTAX  INTEGER {
              true(1),
              false(2)
            }
    ACCESS  read-write
    STATUS  deprecated
    DESCRIPTION
    "The administrative value of the Edge Port parameter.  A
     value of TRUE(1) indicates that this port should be
     assumed as an edge-port and a value of FALSE(2) indicates
     that this port should be assumed as a non-edge-port."
        ::= { snPortStpEntry 15 }

snPortStpPortAdminPointToPoint OBJECT-TYPE
    SYNTAX  INTEGER {
              true(1),
              false(2)
            }
    ACCESS  read-write
    STATUS  deprecated
    DESCRIPTION
    "The administrative point-to-point status of the LAN segment
     attached to this port.  A value of TRUE(1) indicates that
     this port should always be treated as if it is connected to
     a point-to-point link.  A value of FALSE(2) indicates
     that this port should be treated as having a shared media
     connection."
        ::= { snPortStpEntry 16 }

-- Port STP Configuration Group
-- snIfStpTable is replacing snPortStpTable.
-- snIfStpPortNum is using ifIndex value to index snIfStpTable.


snIfStpTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SnIfStpEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "A specific snIfStpTable consists of a number of 
                 switch ports. This table only exists if only if
                 snVLanByPortCfgTable exists and snVLanByPortCfgStpMode is
                 enabled for each VLAN."
        ::= { snPortStpInfo 2 }

snIfStpEntry OBJECT-TYPE
        SYNTAX  SnIfStpEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "An entry in the snIfStpTable indicates the 
                 configuration on a specified port. A SNMP SET PDU 
                 for a row of the snIfStpTable requires the entired 
                 sequence of the MIB Objects in each 
                 snIfStpEntry stored in one PDU.  Otherwise, 
                 GENERR return-value will be returned."
        INDEX   { 
                        snIfStpVLanId,  
                        snIfStpPortNum
        }
        ::= { snIfStpTable 1 }

SnIfStpEntry ::= SEQUENCE {
        snIfStpVLanId
                INTEGER,
        snIfStpPortNum
                INTEGER,
        snIfStpPortPriority
                INTEGER,
        snIfStpCfgPathCost
                INTEGER,
    snIfStpOperState
                INTEGER,
    snIfStpPortState
        INTEGER,
    snIfStpPortDesignatedCost
        INTEGER,
    snIfStpPortDesignatedRoot
        BridgeId,
    snIfStpPortDesignatedBridge
        BridgeId,
    snIfStpPortDesignatedPort
        OCTET STRING,
    snIfStpPortAdminRstp
        INTEGER,
    snIfStpPortProtocolMigration
        INTEGER,
    snIfStpPortAdminEdgePort
        INTEGER,
    snIfStpPortAdminPointToPoint
        INTEGER,
    snIfStpOperPathCost
        INTEGER,
    snIfStpPortRole
        INTEGER,
    snIfStpBPDUTransmitted
        Counter32,
    snIfStpBPDUReceived
        Counter32,
    snIfRstpConfigBPDUReceived
        Counter32,
    snIfRstpTCNBPDUReceived
        Counter32,
    snIfRstpConfigBPDUTransmitted
        Counter32,
    snIfRstpTCNBPDUTransmitted
        Counter32
        }

snIfStpVLanId OBJECT-TYPE
        SYNTAX  INTEGER (1..65535)
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The VLAN ID of the VLAN switch community." 
        ::= { snIfStpEntry 1 }

snIfStpPortNum OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The port number of the Switch. It has the ifIndex value."
        ::= { snIfStpEntry 2 }

snIfStpPortPriority OBJECT-TYPE
        SYNTAX  INTEGER (8..255)
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
    "The value of the priority field which is
     contained in the first (in network byte order)
     octet of the (2 octet long) Port ID.  The other
     octet of the Port ID is given by the value of
     dot1dStpPort."
        ::= { snIfStpEntry 3 }

snIfStpCfgPathCost OBJECT-TYPE
    SYNTAX  INTEGER (0..200000000)
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "dot1dStpPortPathCost : The contribution of this 
         port to the path cost of paths towards the spanning 
         tree root which include this port.  802.1D-1990 
         recommends that the default value of this parameter 
         be in inverse proportion to the speed of the 
         attached LAN. Writing value zero to this object
         sets path cost to a default value which automatically
         changes according to port speed."
        ::= { snIfStpEntry 4 }


snIfStpOperState OBJECT-TYPE
        SYNTAX  INTEGER {
                notActivated(0),             
                activated(1)
                }
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "By default, this mode is set to notActivated(0).
                 notActivated(0)...the Port STP entry is not activated and not in running mode.
                 activated(1)......the Port STP entry is activated and in running mode"  
        ::= { snIfStpEntry 5 }

snIfStpPortState OBJECT-TYPE
    SYNTAX  INTEGER {
              disabled(1),
              blocking(2),
              listening(3),
              learning(4),
              forwarding(5),
              broken(6),
              preforwarding(7)
            }
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
    "The port's current state as defined by
     application of the Spanning Tree Protocol.  This
     state controls what action a port takes on
     reception of a frame.  If the bridge has detected
     a port that is malfunctioning it will place that
     port into the broken(6) state.  For ports which
     are disabled (see dot1dStpPortEnable), this object
     will have a value of disabled(1)."
        ::= { snIfStpEntry 8 }

snIfStpPortDesignatedCost OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
    "The path cost of the Designated Port of the
     segment connected to this port.  This value is
     compared to the Root Path Cost field in received
     bridge PDUs."
        ::= { snIfStpEntry 9 }


snIfStpPortDesignatedRoot OBJECT-TYPE
    SYNTAX  BridgeId
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
    "The unique Bridge Identifier of the Bridge
     recorded as the Root in the Configuration BPDUs
     transmitted by the Designated Bridge for the
     segment to which the port is attached."
        ::= { snIfStpEntry 10 }

snIfStpPortDesignatedBridge OBJECT-TYPE
    SYNTAX  BridgeId
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
    "The Bridge Identifier of the bridge which this
     port considers to be the Designated Bridge for
     this port's segment."
        ::= { snIfStpEntry 11 }

snIfStpPortDesignatedPort OBJECT-TYPE
    SYNTAX  OCTET STRING (SIZE (2))
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
    "The Port Identifier of the port on the Designated
     Bridge for this port's segment."
        ::= { snIfStpEntry 12 }

snIfStpPortAdminRstp OBJECT-TYPE
    SYNTAX  INTEGER {
              true(1),
              false(2)
            }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
    "Enable or disable RSTP of a port which is a member of a VLAN.
    If the VLAN is not operating in RSTP, this object will return
    FALSE(2) and this object is not writable."
        ::= { snIfStpEntry 13 }

snIfStpPortProtocolMigration OBJECT-TYPE
    SYNTAX  INTEGER {
              true(1),
              false(2)
            }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
    "When operating in RSTP (version 2) mode, writing TRUE(1)
     to this object forces this port to transmit RSTP BPDUs.
     Any other operation on this object has no effect and
     it always returns FALSE(2) when read."
        ::= { snIfStpEntry 14 }

snIfStpPortAdminEdgePort OBJECT-TYPE
    SYNTAX  INTEGER {
              true(1),
              false(2)
            }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
    "The administrative value of the Edge Port parameter.  A
     value of TRUE(1) indicates that this port should be
     assumed as an edge-port and a value of FALSE(2) indicates
     that this port should be assumed as a non-edge-port."
        ::= { snIfStpEntry 15 }

snIfStpPortAdminPointToPoint OBJECT-TYPE
    SYNTAX  INTEGER {
              true(1),
              false(2)
            }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
    "The administrative point-to-point status of the LAN segment
     attached to this port.  A value of TRUE(1) indicates that
     this port should always be treated as if it is connected to
     a point-to-point link.  A value of FALSE(2) indicates
     that this port should be treated as having a shared media
     connection."
        ::= { snIfStpEntry 16 }

snIfStpOperPathCost OBJECT-TYPE
    SYNTAX  INTEGER (0..200000000)
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "dot1dStpPortPathCost : The contribution of this 
         port to the path cost of paths towards the spanning 
         tree root which include this port.  802.1D-1990 
         recommends that the default value of this parameter 
         be in inverse proportion to the speed of the 
         attached LAN. Reading value zero indicates an unknown
         path cost value because port speed cannot be determined
         due to speed auto sense in progress or port link is down."
        ::= { snIfStpEntry 17 }

snIfStpPortRole OBJECT-TYPE
    SYNTAX  INTEGER {
              unknown(0),
              alternate(1),
              root(2),
              designated(3),
              backupRole(4),
              disabledRole(5)
            }
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
    "STP/RSTP port role."
        ::= { snIfStpEntry 18 }

snIfStpBPDUTransmitted OBJECT-TYPE
    SYNTAX  Counter32
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
    "STP/RSTP bridge protocol unit transmitted counter."
        ::= { snIfStpEntry 19 }

snIfStpBPDUReceived OBJECT-TYPE
    SYNTAX  Counter32
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
    "STP/RSTP bridge protocol unit received counter."
        ::= { snIfStpEntry 20 }

snIfRstpConfigBPDUReceived OBJECT-TYPE
    SYNTAX  Counter32
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
    "RSTP configuration bridge protocol unit received counter."
        ::= { snIfStpEntry 21 }

snIfRstpTCNBPDUReceived OBJECT-TYPE
    SYNTAX  Counter32
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
    "RSTP topology change notification bridge protocol unit received counter."
        ::= { snIfStpEntry 22 }

snIfRstpConfigBPDUTransmitted OBJECT-TYPE
    SYNTAX  Counter32
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
    "RSTP configuration bridge protocol unit transmitted counter."
        ::= { snIfStpEntry 23 }

snIfRstpTCNBPDUTransmitted OBJECT-TYPE
    SYNTAX  Counter32
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
    "RSTP topology change notification bridge protocol unit transmitted counter."
        ::= { snIfStpEntry 24 }


-- Trunk Port Configuration Group


snTrunkTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SnTrunkEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "A specific snTrunkTable consists of a number of 
                 Trunk port-mask." 
        ::= { snTrunkInfo 1 }

snTrunkEntry OBJECT-TYPE
        SYNTAX  SnTrunkEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "An entry in the snTrunkTable indicates the 
                 configuration on a specified Trunk port membership." 
        INDEX   { 
                snTrunkIndex
        }
        ::= { snTrunkTable 1 }

SnTrunkEntry ::= SEQUENCE {
        snTrunkIndex
                INTEGER,
        snTrunkPortMask
                PortMask,
        snTrunkType
                INTEGER
        }

snTrunkIndex OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The number of the trunk entries can be configured.
                This can be 32*<slots> for Jetcore, and 16*<slots> for Ironcore."
        ::= { snTrunkEntry 1 }


snTrunkPortMask OBJECT-TYPE
        SYNTAX  PortMask
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Trunk membership of the Switch." 
        ::= { snTrunkEntry 2 }


snTrunkType OBJECT-TYPE
        SYNTAX  INTEGER {
                switch(1),
            server(2)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The trunk connection type which specifies what
                device the trunk ports are connected to."
        ::= { snTrunkEntry 3 }


-- Multi-slot Trunk Port Configuration Group


snMSTrunkTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SnMSTrunkEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "A table contains the configuration of port members of
                multi-slot trunk groups."
        ::= { snTrunkInfo 2 }

snMSTrunkEntry OBJECT-TYPE
        SYNTAX  SnMSTrunkEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "An entry of the snMSTrunkTable."
        INDEX {snMSTrunkPortIndex}
        ::= { snMSTrunkTable 1 }

SnMSTrunkEntry ::= SEQUENCE {
        snMSTrunkPortIndex
                INTEGER,
        snMSTrunkPortList
                OCTET STRING,
        snMSTrunkType
                INTEGER,
        snMSTrunkRowStatus
                INTEGER
        }

snMSTrunkPortIndex OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The primary port of a trunk group. For module with Gig ports,
                primary port is port 1, 3, 5, 7. For module with 10/100 ports,
                primary port is port 1, 5, 9, 13, 17, 21."
        ::= { snMSTrunkEntry 1 }


snMSTrunkPortList OBJECT-TYPE
        SYNTAX  OCTET STRING
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "A list of port indices which are the port membership
                of a trunk group. Each port index is a 16-bit integer
                in big endian order. The first port index must be the
                primary port index."
        ::= { snMSTrunkEntry 2 }


snMSTrunkType OBJECT-TYPE
        SYNTAX  INTEGER {
                switch(1),
            server(2)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The trunk connection type which specifies what
                device the trunk ports are connected to."
        ::= { snMSTrunkEntry 3 }


snMSTrunkRowStatus OBJECT-TYPE
        SYNTAX  INTEGER {
            invalid(1),
            valid(2),
            delete(3),
            create(4),
            modify(5)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "To create or delete a table entry."
        ::= { snMSTrunkEntry 4 }


-- Switch Configuration Summary Group


snSwSummaryMode OBJECT-TYPE
        SYNTAX  INTEGER {
                disabled(0),
                enabled(1)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The Switch Group Configuration Summary is configured 
                 either enabled or disabled and the
                 default is disabled mode.
                 enabled(1)...........activate Switch Configuration Summary.
                 disabled(0)..........no Switch Configuration Summary."
        ::= { snSwSummary 1 }


--- DHCP Gateway List Table


snDhcpGatewayListTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SnDhcpGatewayListEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "A table of DHCP gateway list of addresses."
        ::= { snDhcpGatewayListInfo 1 }

snDhcpGatewayListEntry             OBJECT-TYPE
        SYNTAX  SnDhcpGatewayListEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "An entry in the IP Port Address table."
        INDEX   { snDhcpGatewayListId }
        ::= { snDhcpGatewayListTable 1 }

SnDhcpGatewayListEntry ::= SEQUENCE {
        snDhcpGatewayListId
                INTEGER,
        snDhcpGatewayListAddrList
                OCTET STRING,
        snDhcpGatewayListRowStatus
                INTEGER
        }


snDhcpGatewayListId                 OBJECT-TYPE
        SYNTAX  INTEGER (1..32)
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The ID for a DHCP gateway list entry."
        ::= { snDhcpGatewayListEntry 1 }

snDhcpGatewayListAddrList          OBJECT-TYPE
        SYNTAX  OCTET STRING (SIZE(4..32))
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The DHCP gateway address list for each DHCP gateway list ID.
                This list contains 1 to 8 IP addresses represented by octet string."
        ::= { snDhcpGatewayListEntry 2 }

snDhcpGatewayListRowStatus OBJECT-TYPE
        SYNTAX  INTEGER {
                other(1),
                valid(2),
                delete(3),
                create(4)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "This object is used to create and
                delete row in the table and control
                if they are used. The values
                that can be written are:
                  delete(3)...deletes the row
                  create(4)...creates a new row or modifies an exsisting row

                If the row exists, then a SET with
                value of create(4) returns error
                'badValue'. Deleted rows go away
                immediately. The following values
                can be returned on reads:
                  noSuch(0)...no such row
                  other(1)....some other case
                  valid(2)....the row exists and is valid"
        ::= { snDhcpGatewayListEntry 3 }


-- DNS MIB Group 

snDnsDomainName OBJECT-TYPE
        SYNTAX  DisplayString (SIZE(0..80))
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "DNS Domain Name string."
        ::= { snDnsInfo 1 }

snDnsGatewayIpAddrList OBJECT-TYPE
        SYNTAX  OCTET STRING (SIZE(16))
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The DNS Gateway IP address list. This list contains 4 
                IP addresses represented by octet string."
        ::= { snDnsInfo 2 }

-- MAC filter table

snMacFilterTable       OBJECT-TYPE
        SYNTAX  SEQUENCE OF SnMacFilterEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "MAC filter table."
        ::= { snMacFilter 1 }

snMacFilterEntry       OBJECT-TYPE
        SYNTAX  SnMacFilterEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "An entry in the MAC filter table."
        INDEX   { snMacFilterIndex }
        ::= { snMacFilterTable 1 }

SnMacFilterEntry ::= SEQUENCE {
        snMacFilterIndex
                INTEGER,
        snMacFilterAction              
                INTEGER,
        snMacFilterSourceMac
                MacAddress,
        snMacFilterSourceMask
                MacAddress,
        snMacFilterDestMac
                MacAddress,
        snMacFilterDestMask
                MacAddress,
        snMacFilterOperator
                INTEGER,
        snMacFilterFrameType
                INTEGER,
        snMacFilterFrameTypeNum
                INTEGER,
        snMacFilterRowStatus
                INTEGER
        }

snMacFilterIndex       OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The table index for a filter entry."
        ::= { snMacFilterEntry 1 }

snMacFilterAction      OBJECT-TYPE
        SYNTAX  INTEGER { deny(0), permit(1) } 
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Action to take if the Mac packet match
                with this filter."
        ::= { snMacFilterEntry 2 }

snMacFilterSourceMac    OBJECT-TYPE
        SYNTAX  MacAddress
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Source MAC address."
        ::= { snMacFilterEntry 3 }

snMacFilterSourceMask  OBJECT-TYPE
        SYNTAX  MacAddress
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Source MAC subnet mask."
        ::= { snMacFilterEntry 4 }

snMacFilterDestMac      OBJECT-TYPE
        SYNTAX  MacAddress
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Destination MAC address."
        ::= { snMacFilterEntry 5 }

snMacFilterDestMask    OBJECT-TYPE
        SYNTAX  MacAddress
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Destination MAC subnet mask."
        ::= { snMacFilterEntry 6 }

snMacFilterOperator    OBJECT-TYPE
        SYNTAX  INTEGER { equal(0), notEqual(1), less(2), greater(3) }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Type of comparison to perform."
        ::= { snMacFilterEntry 7 }

snMacFilterFrameType     OBJECT-TYPE
        SYNTAX  INTEGER{ notUsed(0), ethernet(1), llc(2), snap(3) }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Frame Type: ethernet-type, LLC and SNAP types"
        ::= { snMacFilterEntry 8 }

snMacFilterFrameTypeNum     OBJECT-TYPE
        SYNTAX  INTEGER(0..65535)
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Frame Type Number. 0 means NA"
        ::= { snMacFilterEntry 9 }

snMacFilterRowStatus   OBJECT-TYPE
        SYNTAX   INTEGER {
            invalid(1),
            valid(2),
            delete(3),
            create(4),
            modify(5)
        }
        ACCESS   read-write
        STATUS   mandatory
        DESCRIPTION
        "This object is used to create and
         delete row in the table and control
         if they are used. The values
         that can be written are:
         delete(3)...deletes the row
         create(4)...creates a new row
         modify(5)...modifies an exsisting row

         If the row exists, then a SET with
         value of create(4) returns error
         'badValue'. Deleted rows go away
         immediately. The following values
         can be returned on reads:
         noSuch(0)...no such row
         invalid(1)...Setting it to 'invalid' has the effect of
                      rendering it inoperative..
         valid(2)....the row exists and is valid"
        ::= { snMacFilterEntry 10 }

-- MAC Filter Port access table

snMacFilterPortAccessTable           OBJECT-TYPE
        SYNTAX  SEQUENCE OF SnMacFilterPortAccessEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "MAC Filter port access table."
        ::= { snMacFilter 2 }

snMacFilterPortAccessEntry           OBJECT-TYPE
        SYNTAX  SnMacFilterPortAccessEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "An entry in the MAC Filter Port access table."
        INDEX   { snMacFilterPortAccessPortIndex }
        ::= { snMacFilterPortAccessTable 1 }

SnMacFilterPortAccessEntry ::= SEQUENCE {
        snMacFilterPortAccessPortIndex
                INTEGER,
        snMacFilterPortAccessFilters
                OCTET STRING,
        snMacFilterPortAccessRowStatus
                INTEGER
        }

snMacFilterPortAccessPortIndex               OBJECT-TYPE
        SYNTAX  INTEGER (1..3900)
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The port index.
                For FastIron/NetIron products, port index value is from 1 to 42
                For BigIron products, port index is an encoded number:
                The bit 0 to bit 7: port number.
                The bit 8 to bit 11: slot number.
                For virtual router interface, slot number is 15,
                port number is the virtual router port from 1 to 60.
                Therefore, port index value for BigIron is from 257 to 3900."
        ::= { snMacFilterPortAccessEntry 1 }

snMacFilterPortAccessFilters                 OBJECT-TYPE
        SYNTAX  OCTET STRING
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "1st octet correspond to 1st filter 
                number and so on."
        ::= { snMacFilterPortAccessEntry 2 }

snMacFilterPortAccessRowStatus       OBJECT-TYPE
        SYNTAX   INTEGER {
            invalid(1),
            valid(2),
            delete(3),
            create(4)
        }
        ACCESS   read-write
        STATUS   mandatory
        DESCRIPTION
        "This object is used to create and
         delete row in the table and control
         if they are used. The values
         that can be written are:
         delete(3)...deletes the row
         create(4)...creates a new row

         If the row exists, then a SET with
         value of create(4) returns error
         'badValue'. Deleted rows go away
         immediately. The following values
         can be returned on reads:
         noSuch(0)...no such row
         invalid(1)...Setting it to 'invalid' has the effect of
                      rendering it inoperative..
         valid(2)....the row exists and is valid"
        ::= { snMacFilterPortAccessEntry 3 }

-- NTP general group

snNTPGeneral               OBJECT IDENTIFIER ::= { snNTP 1 }

snNTPPollInterval          OBJECT-TYPE
        SYNTAX  INTEGER (1..65535)
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Interval specifies how often to poll the NTP server.
                Each unit is one second."
    DEFVAL  { 1800 }
        ::= { snNTPGeneral 1 }

snNTPTimeZone              OBJECT-TYPE
        SYNTAX  INTEGER {
                alaska(0),
                aleutian(1),
                arizona(2),
                central(3),
                eastIndiana(4),
                eastern(5),
                hawaii(6),
                michigan(7),
                mountain(8),
                pacific(9),
                samoa(10),
                gmtPlus12(11),
                gmtPlus11(12),
                gmtPlus10(13),
                gmtPlus9(14),
                gmtPlus8(15),
                gmtPlus7(16),
                gmtPlus6(17),
                gmtPlus5(18),
                gmtPlus4(19),
                gmtPlus3(20),
                gmtPlus2(21),
                gmtPlus1(22),
                gmt(23),
                gmtMinus1(24),
                gmtMinus2(25),
                gmtMinus3(26),
                gmtMinus4(27),
                gmtMinus5(28),
                gmtMinus6(29),
                gmtMinus7(30),
                gmtMinus8(31),
                gmtMinus9(32),
                gmtMinus10(33),
                gmtMinus11(34),
                gmtMinus12(35) }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Time zone."
    DEFVAL  { gmt }
        ::= { snNTPGeneral 2 }

snNTPSummerTimeEnable      OBJECT-TYPE
        SYNTAX  INTEGER { disabled(0), enabled (1) }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Enable/Disable daylight saving time. This enables daylight
                saving time for time/date starting 02:00:00 of first Sunday
                in April and ending 02:00:00 of last Sunday in October every
                year."
    DEFVAL  { disabled }
        ::= { snNTPGeneral 3 }

snNTPSystemClock           OBJECT-TYPE
        SYNTAX  OCTET STRING (SIZE (7))
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "System clock, in the following format:
                octet   0: seconds after the minute [0-60]
                octet   1: minutes after the hour [0-59]
                octet   2: hours since midnight [0-23]
                octet   3: day of the month [1-31]
                octet   4: months since January [0-11]
                octet   5: years since 1900
                octet   6: days since Sunday [0-6]
                Setting this object requires valid value in octets 0 to 5,
                and zero in octet 6. System clock can be disabled by setting
                zero to all octets."
        ::= { snNTPGeneral 4 }

snNTPSync                  OBJECT-TYPE
        SYNTAX  INTEGER { other(1), synchronize(2) }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Initiate time synchronization to the NTP servers.
                For set operation, only 'synchronize(2)' is accepted.
                For get operation, always return 'other(1)'."
        ::= { snNTPGeneral 5 }

-- NTP server table

snNTPServerTable           OBJECT-TYPE
        SYNTAX  SEQUENCE OF SnNTPServerEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "NTP (Network Time Protocol) server table."
        ::= { snNTP 2 }

snNTPServerEntry           OBJECT-TYPE
        SYNTAX  SnNTPServerEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "An entry in the NTP server table."
        INDEX   { snNTPServerIp }
        ::= { snNTPServerTable 1 }

SnNTPServerEntry ::= SEQUENCE {
        snNTPServerIp
                IpAddress,
        snNTPServerVersion
                INTEGER,
        snNTPServerRowStatus
                INTEGER
        }

snNTPServerIp              OBJECT-TYPE
        SYNTAX  IpAddress
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "NTP server IP address."
        ::= { snNTPServerEntry 1 }

snNTPServerVersion         OBJECT-TYPE
        SYNTAX  INTEGER (1..4)
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "NTP server version."
    DEFVAL  { 1 }
        ::= { snNTPServerEntry 2 }

snNTPServerRowStatus       OBJECT-TYPE
        SYNTAX  INTEGER {
            other(1),
            valid(2),
            delete(3),
            create(4) }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "To create or delete a NTP server table entry."
        ::= { snNTPServerEntry 3 }

-- Radius general group

snRadiusGeneral            OBJECT IDENTIFIER ::= { snRadius 1 }

snRadiusSNMPAccess         OBJECT-TYPE
        SYNTAX  INTEGER { disabled(0), enabled(1) }
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "Indicate whether Radius group MIB obejcts can be
                accessed by SNMP manager. If value is disabled,
                all Radius group MIB objects return 'general error'."
    DEFVAL  { disabled }
        ::= { snRadiusGeneral 1 }

snRadiusEnableTelnetAuth   OBJECT-TYPE
        SYNTAX  INTEGER { disabled(0), enabled(1) }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Enable/Disable telnet authentication specified
                by 'snRadiusLoginMethod'."
    DEFVAL  { disabled }
        ::= { snRadiusGeneral 2 }

snRadiusRetransmit         OBJECT-TYPE
        SYNTAX  INTEGER (0..5)
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The number of authentication query retransmissions
                to the Radius server."
    DEFVAL  { 3 }
        ::= { snRadiusGeneral 3 }

snRadiusTimeOut            OBJECT-TYPE
        SYNTAX  INTEGER (1..60)
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Interval specifies how long to wait for authentication
                reply from the Radius server, each unit is one second."
    DEFVAL  { 3 }
        ::= { snRadiusGeneral 4 }

snRadiusDeadTime           OBJECT-TYPE
        SYNTAX  INTEGER (1..5)
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Interval specifies Radius server dead time,
                each unit is one minute."
    DEFVAL  { 3 }
        ::= { snRadiusGeneral 5 }

snRadiusKey                OBJECT-TYPE
        SYNTAX  DisplayString (SIZE(0..32))
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Authentication key displayed as encrypted text."
        ::= { snRadiusGeneral 6 }

snRadiusLoginMethod        OBJECT-TYPE
        SYNTAX  OCTET STRING (SIZE(0..7))
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "A sequence of authentication methods. Each octet represents
                a method to authenticate the user login process. Each octet
                has the following enumeration value:
                  enable(1) - authenticate by command line interface
                              enable password
                  radius(2) - authenticate by requesting radius server
                  local(3) - authenticate by local user account table
                  line(4) - authenticate by telnet password
                  tacplus(5) - authenticate by requesting tacplus server
                  none(6) - do not authenticate
                  tacacs(7) - authenticate by requesting tacacs server
                Setting a zero length octet string invalidates all
                previous authentication methods."
        ::= { snRadiusGeneral 7 }

snRadiusEnableMethod       OBJECT-TYPE
        SYNTAX  OCTET STRING (SIZE(0..7))
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "A sequence of authentication methods. Each octet represents
                a method to authenticate the user entering priviledge mode
                of the command line interface. Each octet has the following
                enumeration value:
                  enable(1) - authenticate by command line interface
                              enable password
                  radius(2) - authenticate by requesting radius server
                  local(3) - authenticate by local user account table
                  line(4) - authenticate by telnet password
                  tacplus(5) - authenticate by requesting tacplus server
                  none(6) - do not authenticate
                  tacacs(7) - authenticate by requesting tacacs server
                Setting a zero length octet string invalidates all
                previous authentication methods."
        ::= { snRadiusGeneral 8 }

snRadiusWebServerMethod    OBJECT-TYPE
        SYNTAX  OCTET STRING (SIZE(0..7))
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "A sequence of authentication methods. Each octet represents
                a method to authenticate the user accessing the web-server.
                Each octet has the following enumeration value:
                  enable(1) - authenticate by command line interface
                              enable password
                  radius(2) - authenticate by requesting radius server
                  local(3) - authenticate by local user account table
                  line(4) - authenticate by telnet password
                  tacplus(5) - authenticate by requesting tacplus server
                  none(6) - do not authenticate
                  tacacs(7) - authenticate by requesting tacacs server
                Setting a zero length octet string invalidates all
                previous authentication methods."
        ::= { snRadiusGeneral 9 }

snRadiusSNMPServerMethod   OBJECT-TYPE
        SYNTAX  OCTET STRING (SIZE(0..7))
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "A sequence of authentication methods. Each octet represents
                a method to authenticate the user accessing the snmp-server.
                Each octet has the following enumeration value:
                  enable(1) - authenticate by command line interface
                              enable password
                  radius(2) - authenticate by requesting radius server
                  local(3) - authenticate by local user account table
                  line(4) - authenticate by telnet password
                  tacplus(5) - authenticate by requesting tacplus server
                  none(6) - do not authenticate
                  tacacs(7) - authenticate by requesting tacacs server
                Setting a zero length octet string invalidates all
                previous authentication methods."
        ::= { snRadiusGeneral 10 }

-- Radius server table

snRadiusServerTable        OBJECT-TYPE
        SYNTAX  SEQUENCE OF SnRadiusServerEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "Radius server table."
        ::= { snRadius 2 }

snRadiusServerEntry        OBJECT-TYPE
        SYNTAX  SnRadiusServerEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "An entry in the Radius server table."
        INDEX   { snRadiusServerIp }
        ::= { snRadiusServerTable 1 }

SnRadiusServerEntry ::= SEQUENCE {
        snRadiusServerIp
                IpAddress,
        snRadiusServerAuthPort
                INTEGER,
        snRadiusServerAcctPort
                INTEGER,
        snRadiusServerRowStatus
                INTEGER,
        snRadiusServerRowKey
                DisplayString,
        snRadiusServerUsage
                INTEGER
        }

snRadiusServerIp           OBJECT-TYPE
        SYNTAX  IpAddress
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "Radius server IP address."
        ::= { snRadiusServerEntry 1 }

snRadiusServerAuthPort     OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Authentication UDP port number."
    DEFVAL  { 1645 }
        ::= { snRadiusServerEntry 2 }

snRadiusServerAcctPort     OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Account UDP port number."
    DEFVAL  { 1646 }
        ::= { snRadiusServerEntry 3 }

snRadiusServerRowStatus    OBJECT-TYPE
        SYNTAX  INTEGER {
            other(1),
            valid(2),
            delete(3),
            create(4) }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "To create or delete a Radius server table entry."
        ::= { snRadiusServerEntry 4 }

snRadiusServerRowKey       OBJECT-TYPE
        SYNTAX  DisplayString (SIZE(0..32))
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Authentication key displayed as encrypted text."
        ::= { snRadiusServerEntry 5 }

snRadiusServerUsage    OBJECT-TYPE
        SYNTAX  INTEGER {
            default(1),
            authentication-only(2),
            authorization-only(3),
            accounting-only(4) }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "To allow this server to be dedicated for a particular AAA activity."
        ::= { snRadiusServerEntry 6 }

--- Tacacs General MIBs

snTacacsGeneral            OBJECT IDENTIFIER ::= { snTacacs 1 }

snTacacsRetransmit         OBJECT-TYPE
        SYNTAX  INTEGER (0..5)
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The number of authentication query retransmissions
                to the Tacacs server."
    DEFVAL  { 3 }
        ::= { snTacacsGeneral 1 }

snTacacsTimeOut            OBJECT-TYPE
        SYNTAX  INTEGER (1..15)
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Interval specifies how long to wait for authentication
                reply from the Tacacs server, each unit is one second."
    DEFVAL  { 3 }
        ::= { snTacacsGeneral 2 }

snTacacsDeadTime           OBJECT-TYPE
        SYNTAX  INTEGER (1..5)
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Interval specifies Tacacs server dead time,
                each unit is one minute."
    DEFVAL  { 3 }
        ::= { snTacacsGeneral 3 }

snTacacsKey                OBJECT-TYPE
        SYNTAX  DisplayString (SIZE(0..32))
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Authentication key displayed as encrypted text."
        ::= { snTacacsGeneral 4 }

snTacacsSNMPAccess         OBJECT-TYPE
        SYNTAX  INTEGER { disabled(0), enabled(1) }
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "Indicate whether Tacacs group MIB obejcts can be
                accessed by SNMP manager. If value is disabled,
                all Tacacs group MIB objects return 'general error'."
    DEFVAL  { disabled }
        ::= { snTacacsGeneral 5 }

-- Tacacs server table

snTacacsServerTable        OBJECT-TYPE
        SYNTAX  SEQUENCE OF SnTacacsServerEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "Tacacs server table."
        ::= { snTacacs 2 }

snTacacsServerEntry        OBJECT-TYPE
        SYNTAX  SnTacacsServerEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "An entry in the Tacacs server table."
        INDEX   { snTacacsServerIp }
        ::= { snTacacsServerTable 1 }

SnTacacsServerEntry ::= SEQUENCE {
        snTacacsServerIp
                IpAddress,
        snTacacsServerAuthPort
                INTEGER,
        snTacacsServerRowStatus
                INTEGER,
        snTacacsServerRowKey
                DisplayString,
        snTacacsServerUsage
                INTEGER
        }

snTacacsServerIp           OBJECT-TYPE
        SYNTAX  IpAddress
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "Tacacs server IP address."
        ::= { snTacacsServerEntry 1 }

snTacacsServerAuthPort     OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Authentication UDP port number."
    DEFVAL  { 49 }
        ::= { snTacacsServerEntry 2 }

snTacacsServerRowStatus    OBJECT-TYPE
        SYNTAX  INTEGER {
            other(1),
            valid(2),
            delete(3),
            create(4) }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "To create or delete a Tacacs server table entry."
        ::= { snTacacsServerEntry 3 }

snTacacsServerRowKey       OBJECT-TYPE
        SYNTAX  DisplayString (SIZE(0..32))
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Authentication key displayed as encrypted text."
        ::= { snTacacsServerEntry 4 }

snTacacsServerUsage    OBJECT-TYPE
        SYNTAX  INTEGER {
            default(1),
            authentication-only(2),
            authorization-only(3),
            accounting-only(4) }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "To allow this server to be dedicated for a particular AAA activity."
        ::= { snTacacsServerEntry 5 }

-- QOS Profile Group

snQosProfileTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SnQosProfileEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "A table contains the configuration of qos profile 
                 groups."
        ::= { snQos 1 }

snQosProfileEntry OBJECT-TYPE
        SYNTAX  SnQosProfileEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "An entry of the snQosProfileTable."
        INDEX {snQosProfileIndex}
        ::= { snQosProfileTable 1 }

SnQosProfileEntry ::= SEQUENCE {
        snQosProfileIndex
                INTEGER,
        snQosProfileName
                DisplayString,
        snQosProfileRequestedBandwidth
                INTEGER,
        snQosProfileCalculatedBandwidth
                INTEGER
        }

snQosProfileIndex OBJECT-TYPE
        SYNTAX  INTEGER (1..8)
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The table index of QOS Profile." 
        ::= { snQosProfileEntry 1 }

snQosProfileName OBJECT-TYPE
        SYNTAX  DisplayString (SIZE(0..32))
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Qos Profile Name string."
        ::= { snQosProfileEntry 2 }

snQosProfileRequestedBandwidth OBJECT-TYPE
        SYNTAX  INTEGER (0..100)
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Qos Profile Requested Bandwidth."
        ::= { snQosProfileEntry 3 }

snQosProfileCalculatedBandwidth OBJECT-TYPE
        SYNTAX  INTEGER (0..100)
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "Qos Profile Calculated Bandwidth."
        ::= { snQosProfileEntry 4 }

-- QOS Bind Group

snQosBindTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SnQosBindEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "A table contains the configuration of 802.1p to qos profile 
                 binding groups."
        ::= { snQos 2 }

snQosBindEntry OBJECT-TYPE
        SYNTAX  SnQosBindEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "An entry of the snQosBindTable."
        INDEX {snQosBindIndex}
        ::= { snQosBindTable 1 }

SnQosBindEntry ::= SEQUENCE {
        snQosBindIndex
                INTEGER,
        snQosBindPriority
                INTEGER,
        snQosBindProfileIndex
                INTEGER
        }

snQosBindIndex OBJECT-TYPE
        SYNTAX  INTEGER (1..8)
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The table index of QOS Bind."
        ::= { snQosBindEntry 1 }

snQosBindPriority OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                 "QOS bind priority."
        ::= { snQosBindEntry 2 }

snQosBindProfileIndex OBJECT-TYPE
        SYNTAX  INTEGER (1..8)
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "QOS Bind Profile Index. This is pointer to the
                index of snQosProfile Table." 
        ::= { snQosBindEntry 3 }

-- Denial of service attack

snDosAttack       OBJECT IDENTIFIER ::= { snQos 3 }
snDosAttackGlobal OBJECT IDENTIFIER ::= { snDosAttack 1 }

snDosAttackICMPDropCount OBJECT-TYPE
        SYNTAX  Counter
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "ICMP drop counter."
        ::= { snDosAttackGlobal 1 }

snDosAttackICMPBlockCount OBJECT-TYPE
        SYNTAX  Counter
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "ICMP block counter."
        ::= { snDosAttackGlobal 2 }

snDosAttackSYNDropCount OBJECT-TYPE
        SYNTAX  Counter
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "SYN drop counter."
        ::= { snDosAttackGlobal 3 }

snDosAttackSYNBlockCount OBJECT-TYPE
        SYNTAX  Counter
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "SYN block counter."
        ::= { snDosAttackGlobal 4 }

snDosAttackPortTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SnDosAttackPortEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "Denial of service attack port table."
        ::= { snDosAttack 2 }

snDosAttackPortEntry OBJECT-TYPE
        SYNTAX  SnDosAttackPortEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "An entry of the denial of service attack port table."
        INDEX {snDosAttackPort}
        ::= { snDosAttackPortTable 1 }

SnDosAttackPortEntry ::= SEQUENCE {
        snDosAttackPort
                INTEGER,
        snDosAttackPortICMPDropCount
                Counter,
        snDosAttackPortICMPBlockCount
                Counter,
        snDosAttackPortSYNDropCount
                Counter,
        snDosAttackPortSYNBlockCount
                Counter
        }

snDosAttackPort OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "ifIndex value of a port." 
        ::= { snDosAttackPortEntry 1 }

snDosAttackPortICMPDropCount OBJECT-TYPE
        SYNTAX  Counter
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "ICMP drop counter."
        ::= { snDosAttackPortEntry 2 }

snDosAttackPortICMPBlockCount OBJECT-TYPE
        SYNTAX  Counter
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "ICMP block counter."
        ::= { snDosAttackPortEntry 3 }

snDosAttackPortSYNDropCount OBJECT-TYPE
        SYNTAX  Counter
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "SYN drop counter."
        ::= { snDosAttackPortEntry 4 }

snDosAttackPortSYNBlockCount OBJECT-TYPE
        SYNTAX  Counter
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "SYN block counter."
        ::= { snDosAttackPortEntry 5 }

-- AAA Mib

snAuthentication                        OBJECT IDENTIFIER ::= { snAAA 1 }
snAuthorization                         OBJECT IDENTIFIER ::= { snAAA 2 }
snAccounting                            OBJECT IDENTIFIER ::= { snAAA 3 }

snAuthorizationCommandMethods        OBJECT-TYPE
        SYNTAX  OCTET STRING (SIZE(0..3))
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "A sequence of authorization methods. Each octet represents
                a method to authorize the user command. Each octet
                has the following value:
                  radius(2) - authorize by requesting radius server
                  tacplus(5) - authorize by requesting tacplus server
                  none(6) - skip authorization
                Setting a zero length octet string invalidates all
                previous authorization methods."
        ::= { snAuthorization 1 }

snAuthorizationCommandLevel OBJECT-TYPE
        SYNTAX  INTEGER {
                 level0(0),
                 level4(4),
                                 level5(5)
                    }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Commands, which are equal to and less than the specified
                command level here needs to be authorized. Possible enumeration
                values:
                0 - Privilege level 0
                4 - Privilege level 4
                5 - Privilege level 5." 
        ::= { snAuthorization 2 }

snAuthorizationExec        OBJECT-TYPE
        SYNTAX  OCTET STRING (SIZE(0..3))
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "A sequence of exec authorization methods. Each octet represents
                a method for telnet or SSH login authorization. Each octet
                has the following enumeration value:
                  radius(2) - send exec authorization request to radius server
                  tacplus(5) - send exec authorization request to tacplus server
                  none(6) - no exec authorization
                Setting a zero length octet string invalidates all
                authorization methods."
        ::= { snAuthorization 3 }


snAccountingCommandMethods        OBJECT-TYPE
        SYNTAX  OCTET STRING (SIZE(0..3))
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "A sequence of accounting methods. Each octet represents
                a method to account for the user command. Each octet
                has the following enumeration value:
                  radius(2) - send accounting info to radius server
                  tacplus(5) - send accounting info to tacplus server
                  none(6) - skip accounting
                Setting a zero length octet string invalidates all
                previous accounting methods."
        ::= { snAccounting 1 }

snAccountingCommandLevel OBJECT-TYPE
        SYNTAX  INTEGER {
                 level0(0),
                 level4(4),
                                 level5(5)
                    }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Commands, which are equal to and less than the specified
                command level here will be accounted. Possible enumeration
                values:
                level0 - Privilege level 0
                level4 - Privilege level 4
                level5 - Privilege level 5." 
        ::= { snAccounting 2 }

snAccountingExec        OBJECT-TYPE
        SYNTAX  OCTET STRING (SIZE(0..3))
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "A sequence of accounting methods. Each octet represents
                a method for telnet or SSH login accounting. Each octet
                has the following enumeration value:
                  radius(2) - send accounting info to radius server
                  tacplus(5) - send accounting info to tacplus server
                  none(6) - skip accounting
                Setting a zero length octet string invalidates all
                previous accounting methods."
        ::= { snAccounting 3 }

snAccountingSystem        OBJECT-TYPE
        SYNTAX  OCTET STRING (SIZE(0..3))
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "A sequence of accounting methods. Each octet represents
                a method to account for the system related events. Each octet
                has the following enumeration value:
                  radius(2) - send accounting info to radius server
                  tacplus(5) - send accounting info to tacplus server
                  none(6) - skip accounting
                Setting a zero length octet string invalidates all
                previous accounting methods."
        ::= { snAccounting 4 }

-- NetFlow Mib

snNetFlowGlb    OBJECT IDENTIFIER ::= { snNetFlow 1 }

snNetFlowGblEnable OBJECT-TYPE
        SYNTAX  INTEGER { disabled(0), enabled(1) }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Enable/disable NetFlow export operation."
    DEFVAL { disabled }
        ::= { snNetFlowGlb 1 }

snNetFlowGblVersion OBJECT-TYPE
        SYNTAX  INTEGER { versionNotSet (0), version1 (1), version5 (5) }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "NetFlow export version."
    DEFVAL { version5 }
        ::= { snNetFlowGlb 2 }

snNetFlowGblProtocolDisable OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "bit 0 - other, disable all protocols export except UDP and TCP
                 bit 1 - tcp, disable TCP protocol export
                 bit 2 - udp, disable UDP protocol export"
    DEFVAL { 0 }
        ::= { snNetFlowGlb 3 }

snNetFlowGblActiveTimeout OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Maximum time an active flow can be in the NetFlow cache (minutes: 1..60)"
    DEFVAL { 60 }
        ::= { snNetFlowGlb 4 }

snNetFlowGblInactiveTimeout OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Maximum time an inactive flow can be in the NetFlow cache (seconds: 10..600)"
    DEFVAL { 60 }
        ::= { snNetFlowGlb 5 }


-- NetFlow Collector Table


snNetFlowCollectorTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SnNetFlowCollectorEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "A table of each NetFlow collector information."
        ::= { snNetFlow 2 }

snNetFlowCollectorEntry OBJECT-TYPE
        SYNTAX  SnNetFlowCollectorEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "A row in the NetFlow collector table."
        INDEX   { snNetFlowCollectorIndex }
        ::= { snNetFlowCollectorTable 1 }

SnNetFlowCollectorEntry ::= SEQUENCE {
        snNetFlowCollectorIndex
                INTEGER,
        snNetFlowCollectorIp
                IpAddress,
        snNetFlowCollectorUdpPort
                INTEGER,
        snNetFlowCollectorSourceInterface
                INTEGER,
        snNetFlowCollectorRowStatus
                INTEGER
        }

snNetFlowCollectorIndex OBJECT-TYPE
        SYNTAX  INTEGER (1..10)
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The index to the NetFlow collector table."
        ::= { snNetFlowCollectorEntry 1 }

snNetFlowCollectorIp OBJECT-TYPE
        SYNTAX  IpAddress
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The NetFlow collector ip address."
        ::= { snNetFlowCollectorEntry 2 }

snNetFlowCollectorUdpPort OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The NetFlow collector UDP port number."
        ::= { snNetFlowCollectorEntry 3 }

snNetFlowCollectorSourceInterface OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The ifIndex value to specify source port to
                 export NetFlow packet. Value 0 to indicate
                 default outgoing port."
        ::= { snNetFlowCollectorEntry 4 }


snNetFlowCollectorRowStatus OBJECT-TYPE
        SYNTAX  INTEGER {
                other(1),
                valid(2),
                delete(3),
                create(4) }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "To create or delete a NetFlow collector table entry."
        ::= { snNetFlowCollectorEntry 5 }



-- NetFlow Aggregation Table


snNetFlowAggregationTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SnNetFlowAggregationEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "A table of each NetFlow aggregation scheme information."
        ::= { snNetFlow 3 }

snNetFlowAggregationEntry OBJECT-TYPE
        SYNTAX  SnNetFlowAggregationEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "A row in the NetFlow Aggregation table."
        INDEX   { snNetFlowAggregationIndex }
        ::= { snNetFlowAggregationTable 1 }

SnNetFlowAggregationEntry ::= SEQUENCE {
        snNetFlowAggregationIndex
                INTEGER,
        snNetFlowAggregationIp
                IpAddress,
        snNetFlowAggregationUdpPort
                INTEGER,
        snNetFlowAggregationSourceInterface
                INTEGER,
        snNetFlowAggregationNumberOfCacheEntries
                INTEGER,
        snNetFlowAggregationActiveTimeout
                INTEGER,
        snNetFlowAggregationInactiveTimeout
                INTEGER,
    snNetFlowAggregationEnable
                INTEGER,
    snNetFlowAggregationRowStatus
                INTEGER
        }

snNetFlowAggregationIndex OBJECT-TYPE
        SYNTAX  INTEGER { as (1), protocolPort (2), destPrefix (3),
                         sourcePrefix (4), prefix (5) }
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The Aggregation scheme ID"      
        ::= { snNetFlowAggregationEntry 1 }

snNetFlowAggregationIp OBJECT-TYPE
        SYNTAX  IpAddress
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The NetFlow aggregation collector ip address."
        ::= { snNetFlowAggregationEntry 2 }

snNetFlowAggregationUdpPort OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The NetFlow aggregation collector UDP port number."
        ::= { snNetFlowAggregationEntry 3 }

snNetFlowAggregationSourceInterface OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The ifIndex value to specify source port to
                 export NetFlow aggregation packet.
                 Value 0 to indicate default outgoing port."
        ::= { snNetFlowAggregationEntry 4 }

snNetFlowAggregationNumberOfCacheEntries OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Number of cache entries for aggregation scheme"
        ::= { snNetFlowAggregationEntry 5 }

snNetFlowAggregationActiveTimeout OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Maximum time an active flow can be in
                 the aggregation cache"
        ::= { snNetFlowAggregationEntry 6 }

snNetFlowAggregationInactiveTimeout OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Maximum time an inactive flow can be in
                 the aggregation cache"
        ::= { snNetFlowAggregationEntry 7 }

snNetFlowAggregationEnable OBJECT-TYPE
        SYNTAX  INTEGER { disabled(0), enabled(1) }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Enable/disable NetFlow aggregation
                 for this aggregation scheme."
    DEFVAL { disabled }
        ::= {  snNetFlowAggregationEntry 8 }

snNetFlowAggregationRowStatus OBJECT-TYPE
        SYNTAX  INTEGER {
                other(1),
                valid(2),
                delete(3),
                create(4) }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "To create or delete a NetFlow collector table entry."
        ::= { snNetFlowAggregationEntry 9 }


-- NetFlow Interface Table

-- Table containing information about the switching
-- type in every interface.

snNetFlowIfTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SnNetFlowIfEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "A list of interface entries.  The number of entries
         is given by the value of ifNumber."
        ::= { snNetFlow 4 }

snNetFlowIfEntry OBJECT-TYPE
        SYNTAX  SnNetFlowIfEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "Entry containing the type of switching performed
                 on that interface."
        INDEX   { snNetFlowIfIndex }
        ::= { snNetFlowIfTable 1 }

SnNetFlowIfEntry ::= SEQUENCE {
        snNetFlowIfIndex
                INTEGER,
        snNetFlowIfFlowSwitching
                INTEGER
        }

 snNetFlowIfIndex OBJECT-TYPE
       SYNTAX      INTEGER (1..65536)
       ACCESS      read-only
       STATUS      mandatory
       DESCRIPTION
           "A unique value, greater than zero, for each
            interface.  It is recommended that values are assigned
            contiguously starting from 1.  The value for each
            interface sub-layer must remain constant at least from
            one re-initialization of the entity's network
            management system to the next re-initialization."
       ::= { snNetFlowIfEntry 1 }

snNetFlowIfFlowSwitching OBJECT-TYPE
       SYNTAX      INTEGER { disabled (0), enabled (1) }
       ACCESS      read-write
       STATUS      mandatory
       DESCRIPTION
           "To enable/disable flow switching in a particular
                    interface:
                        disable (0) - no flow switching
                        enable  (1) - flow switching"
       ::= { snNetFlowIfEntry 2 }

-- sFlow Collector Table.

snSFlowGlb      OBJECT IDENTIFIER ::= { snSFlow 1 }

snSflowCollectorTable     OBJECT-TYPE
        SYNTAX  SEQUENCE OF SnSflowCollectorEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "Table of all but first sFlow collectors. The first collector can be configured
                using sFlowTable in RFC 3176. The RFC cannot be used to configure more
                than one sFlow collectors. This table has been created to fill this gap."
        ::= { snSFlow 2 }

snSflowCollectorEntry   OBJECT-TYPE
        SYNTAX  SnSflowCollectorEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "A row in the sFlow collector table."
        INDEX   { snSflowCollectorIndex }
        ::= { snSflowCollectorTable 1 }

SnSflowCollectorEntry ::= SEQUENCE {
        snSflowCollectorIndex
                INTEGER,
        snSflowCollectorIP
                IpAddress,
        snSflowCollectorUDPPort
                INTEGER,
        snSflowCollectorRowStatus
                INTEGER
        }

snSflowCollectorIndex  OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The index to the sFlow collector table."
        ::= { snSflowCollectorEntry 1 }

snSflowCollectorIP OBJECT-TYPE
        SYNTAX  IpAddress
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The sFlow collector ip address."
        ::= { snSflowCollectorEntry 2 }

snSflowCollectorUDPPort OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The sFlow collector UDP port number."
        ::= { snSflowCollectorEntry 3 }

snSflowCollectorRowStatus OBJECT-TYPE
        SYNTAX  INTEGER {
                noSuch(0),
                other(1),
                valid(2),
                delete(3),
                create(4),
                modify(5)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "To create, update or delete a SFlow collector table entry.
                If the row exists, then a SET with
                value of create(4) returns error
                'badValue'. Deleted rows go away
                immediately. The following values
                can be returned on reads:
                  noSuch(0)...no such row
                  other(1)....some other case
                  valid(2)....the row exists and is valid"
        ::= { snSflowCollectorEntry 4 }


snFdpMIBObjects OBJECT IDENTIFIER ::= { snFDP 1 }

snFdpInterface   OBJECT IDENTIFIER ::= { snFdpMIBObjects 1 }
snFdpCache       OBJECT IDENTIFIER ::= { snFdpMIBObjects 2 }
snFdpGlobal      OBJECT IDENTIFIER ::= { snFdpMIBObjects 3 }
snFdpCachedAddr  OBJECT IDENTIFIER ::= { snFdpMIBObjects 4 }

--
-- FDP Interface Group
--
snFdpInterfaceTable OBJECT-TYPE
    SYNTAX     SEQUENCE OF FdpInterfaceEntry
    ACCESS     not-accessible
    STATUS     mandatory
    DESCRIPTION
            "Status of FDP on the device's interfaces."
    ::= { snFdpInterface 1 }

snFdpInterfaceEntry OBJECT-TYPE
    SYNTAX     FdpInterfaceEntry
    ACCESS     not-accessible
    STATUS     mandatory
    DESCRIPTION
            "An entry in the snFdpInterfaceTable,
            having the status of FDP on an interface."
    INDEX      { snFdpInterfaceIfIndex }
    ::= { snFdpInterfaceTable 1 }

FdpInterfaceEntry ::= SEQUENCE {
    snFdpInterfaceIfIndex           INTEGER,
    snFdpInterfaceFdpEnable            INTEGER,
    snFdpInterfaceCdpEnable            INTEGER
}

snFdpInterfaceIfIndex OBJECT-TYPE
    SYNTAX     INTEGER
    ACCESS     not-accessible
    STATUS     mandatory
    DESCRIPTION
            "ifIndex value of the local interface."
    ::= { snFdpInterfaceEntry 1 }

snFdpInterfaceFdpEnable OBJECT-TYPE
    SYNTAX     INTEGER { false(0), true(1) }
    ACCESS     read-write
    STATUS     mandatory
    DESCRIPTION
            "The flag, whether the Foundry Discovery Protocol
            is currently running on this interface.  It has no
            effect when FDP is disabled (snFdpGlobalRun = FALSE)."
        DEFVAL { true }
    ::= { snFdpInterfaceEntry 2 }

snFdpInterfaceCdpEnable OBJECT-TYPE
    SYNTAX     INTEGER { false(0), true(1) }
    ACCESS     read-write
    STATUS     mandatory
    DESCRIPTION
            "The flag, whether the Cisco Discovery Protocol
            is currently running on this interface.  It has no
            effect when CDP is disabled (snCdpGlobalRun = FALSE)."
        DEFVAL { true }
    ::= { snFdpInterfaceEntry 3 }

--
-- FDP Cache Table
--

snFdpCacheTable OBJECT-TYPE
    SYNTAX     SEQUENCE OF FdpCacheEntry
    ACCESS     not-accessible
    STATUS     mandatory
    DESCRIPTION
            "The table for the cached information obtained
             via receiving FDP/CDP messages."
    ::= { snFdpCache 1 }

snFdpCacheEntry OBJECT-TYPE
    SYNTAX     FdpCacheEntry
    ACCESS     not-accessible
    STATUS     mandatory
    DESCRIPTION
            "An entry in the snFdpCacheTable, having the information 
            received via FDP/CDP on one interface from one device.  
            Entries appear when a FDP/CDP advertisement is received
            from a neighbor device.
            Entries disappear when FDP/CDP is disabled on the interface, or globally."
    INDEX      { snFdpCacheIfIndex, snFdpCacheDeviceIndex }
    ::= { snFdpCacheTable 1 }

FdpCacheEntry ::= SEQUENCE {
    snFdpCacheIfIndex                                   INTEGER,
    snFdpCacheDeviceIndex                               INTEGER,
    snFdpCacheDeviceId                                  DisplayString,
    snFdpCacheAddressType                               INTEGER,
    snFdpCacheAddress                                   OCTET STRING,
    snFdpCacheVersion                                   DisplayString,
    snFdpCacheDevicePort                                DisplayString,
    snFdpCachePlatform                                  DisplayString,
    snFdpCacheCapabilities                              DisplayString, 
    snFdpCacheVendorId                                  INTEGER, 
        snFdpCacheIsAggregateVlan               INTEGER,
        snFdpCacheTagType                               INTEGER,
        snFdpCachePortVlanMask          OCTET STRING,
        snFdpCachePortTagMode         INTEGER,
        snFdpCacheDefaultTrafficeVlanIdForDualMode  INTEGER
}

snFdpCacheIfIndex OBJECT-TYPE
    SYNTAX     INTEGER
    ACCESS     not-accessible
    STATUS     mandatory
    DESCRIPTION
            "ifIndex value of the local interface."
    ::= { snFdpCacheEntry 1 }

snFdpCacheDeviceIndex OBJECT-TYPE
    SYNTAX     INTEGER
    ACCESS     not-accessible
    STATUS     mandatory
    DESCRIPTION
            "Identification of a device, which sent FDP/CDP messages"
    ::= { snFdpCacheEntry 2 }

snFdpCacheDeviceId OBJECT-TYPE
    SYNTAX     DisplayString
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "The Device-ID string as reported in the most recent FDP/CDP
            message.  The zero-length string indicates no Device-ID
            field (TLV) was reported in the most recent FDP/CDP
            message."
    ::= { snFdpCacheEntry 3 }

snFdpCacheAddressType OBJECT-TYPE
    SYNTAX     INTEGER { ip(1), ipx(2), appletalk(3) }
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "An indication of the type of address contained in the
            corresponding instance of snFdpCacheAddress."
    ::= { snFdpCacheEntry 4 }

snFdpCacheAddress OBJECT-TYPE
    SYNTAX     OCTET STRING
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "The (first) network-layer address of the device
            as reported in the most recent FDP/CDP message
                        in the following format:
              IP address:  4 octets, ip(1)
              IPX address: 10 octets, ipx(2)
                     First 4-octet as the network number
                     Second 6-octet as the host number
              Appletalk address: 3 octets, appletalk(3)
                     First 2-octet as the network number
                     Second 1-octet as the host number"
    ::= { snFdpCacheEntry 5 }

snFdpCacheVersion OBJECT-TYPE
    SYNTAX     DisplayString
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "Version string as reported in the most recent FDP/CDP message. "
    ::= { snFdpCacheEntry 6 }


snFdpCacheDevicePort OBJECT-TYPE
    SYNTAX     DisplayString
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "The Port-ID string as reported in the most recent FDP/CDP
            message.  This will typically be the value of the ifName
            object (e.g., Ethernet0).  The zero-length string
            indicates no Port-ID field (TLV) was reported in the
            most recent FDP/CDP message."
    ::= { snFdpCacheEntry 7 }

snFdpCachePlatform OBJECT-TYPE
    SYNTAX     DisplayString
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "The Device's Hardware Platform as reported in the most
            recent FDP/CDP message.  The zero-length string indicates
            that no Platform field (TLV) was reported in the most
            recent FDP/CDP message."
    ::= { snFdpCacheEntry 8 }

snFdpCacheCapabilities OBJECT-TYPE
    SYNTAX     DisplayString
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "The Device's Functional Capabilities as reported in the
            most recent FDP/CDP message. "
    ::= { snFdpCacheEntry 9 }

snFdpCacheVendorId OBJECT-TYPE
    SYNTAX     INTEGER { fdp(1), cdp(2) }
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "Indicates the entry received by either FDP or CDP."
    ::= { snFdpCacheEntry 10 }

snFdpCacheIsAggregateVlan OBJECT-TYPE
    SYNTAX     INTEGER { false(0), true(1) }
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "Neighbor device is in aggregated-vlan."
    ::= { snFdpCacheEntry 11 }

snFdpCacheTagType OBJECT-TYPE
    SYNTAX     INTEGER
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "Neighbor device tag-type."
    ::= { snFdpCacheEntry 12 }

snFdpCachePortVlanMask OBJECT-TYPE
    SYNTAX     OCTET STRING
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "Neighbor device port VLAN masks in 512-byte octet string."
    ::= { snFdpCacheEntry 13 }

snFdpCachePortTagMode OBJECT-TYPE
    SYNTAX     INTEGER { untagged(1), tagged(2), dual(3) }
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "Neighbor device port tag mode"
    ::= { snFdpCacheEntry 14 }

snFdpCacheDefaultTrafficeVlanIdForDualMode OBJECT-TYPE
    SYNTAX     INTEGER
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "Default traffic vlan id for neighbor device dual-mode port"
    ::= { snFdpCacheEntry 15 }

--
-- FDP Global Group
--   

snFdpGlobalRun OBJECT-TYPE
    SYNTAX     INTEGER { false(0), true(1) }
    ACCESS     read-write
    STATUS     mandatory
    DESCRIPTION
            "The flag, whether the Foundry Discovery Protocol
            is currently running.  FDP entries in snFdpCacheTable are
            deleted when FDP is disabled."
    DEFVAL     { false }
    ::= { snFdpGlobal 1 }

snFdpGlobalMessageInterval OBJECT-TYPE
    SYNTAX     INTEGER (5..900)
    ACCESS     read-write
    STATUS     mandatory
    DESCRIPTION
            "The interval at which FDP messages are to be generated.
            The default value is 60 seconds."
    DEFVAL     { 60 }
    ::= { snFdpGlobal 2 }

snFdpGlobalHoldTime OBJECT-TYPE
    SYNTAX     INTEGER (10..255)
    ACCESS     read-write
    STATUS     mandatory
    DESCRIPTION
            "The time for the receiving device holds FDP message.
            The default value is 180 seconds."
    DEFVAL     { 180 }
    ::= { snFdpGlobal 3 }

snFdpGlobalCdpRun OBJECT-TYPE
    SYNTAX     INTEGER { false(0), true(1) }
    ACCESS     read-write
    STATUS     mandatory
    DESCRIPTION
            "An indication of whether the Cisco Discovery Protocol
            is currently running.  CDP entries in snFdpCacheTable are
            deleted when CDP is disabled."
    DEFVAL     { false }
    ::= { snFdpGlobal 4 }

--
-- FDP Cached Address Entry Table
--
snFdpCachedAddressTable OBJECT-TYPE
    SYNTAX     SEQUENCE OF FdpCachedAddressEntry
    ACCESS     not-accessible
    STATUS     mandatory
    DESCRIPTION
            "Cached address table from receiving FDP/CDP messages."
    ::= { snFdpCachedAddr 1 }

snFdpCachedAddressEntry OBJECT-TYPE
    SYNTAX     FdpCachedAddressEntry
    ACCESS     not-accessible
    STATUS     mandatory
    DESCRIPTION
            "An entry (conceptual row) in the snFdpCacheAddressTable,
            containing one cached address from FDP/CDP messages."
    INDEX      { snFdpCachedAddrIfIndex, snFdpCachedAddrDeviceIndex, snFdpCachedAddrDeviceAddrEntryIndex }
    ::= { snFdpCachedAddressTable 1 }

FdpCachedAddressEntry ::= SEQUENCE {
    snFdpCachedAddrIfIndex               INTEGER,
    snFdpCachedAddrDeviceIndex           INTEGER,
    snFdpCachedAddrDeviceAddrEntryIndex  INTEGER,
    snFdpCachedAddrType                              INTEGER,
    snFdpCachedAddrValue                                 OCTET STRING
}

snFdpCachedAddrIfIndex OBJECT-TYPE
    SYNTAX     INTEGER
    ACCESS     not-accessible
    STATUS     mandatory
    DESCRIPTION
            "The ifIndex value of the local interface."
    ::= { snFdpCachedAddressEntry 1 }

snFdpCachedAddrDeviceIndex OBJECT-TYPE
    SYNTAX     INTEGER
    ACCESS     not-accessible
    STATUS     mandatory
    DESCRIPTION
            "A unique vlaue for each device from which FDP/CDP messages
                        are being received."
    ::= { snFdpCachedAddressEntry 2 }

snFdpCachedAddrDeviceAddrEntryIndex OBJECT-TYPE
    SYNTAX     INTEGER
    ACCESS     not-accessible
    STATUS     mandatory
    DESCRIPTION
            "A unique vlaue for address entry in device from which FDP/CDP messages
                        are being received."
    ::= { snFdpCachedAddressEntry 3 }

snFdpCachedAddrType OBJECT-TYPE
    SYNTAX     INTEGER { ip(1), ipx(2), appletalk(3) }
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
                        "An indication of the type of address contained in the
            corresponding instance of snFdpCacheAddrValue."
        ::= { snFdpCachedAddressEntry 4 }

snFdpCachedAddrValue OBJECT-TYPE
    SYNTAX     OCTET STRING
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "The network-layer address of the device
            SNMP-agent as reported in the most recent FDP/CDP message
                        in the following format:
              IP address:  4 octets, ip(1)
              IPX address: 10 octets, ipx(2)
                     First 4-octet as the network number
                     Second 6-octet as the host number
              Appletalk address: 3 octets, appletalk(3)
                     First 2-octet as the network number
                     Second 1-octet as the host number"
    ::= { snFdpCachedAddressEntry 5 }


snMacSecurity   OBJECT IDENTIFIER ::= { snMac 1 }
snPortMacSecurity               OBJECT IDENTIFIER ::= { snMacSecurity 1 }
snPortMacGlobalSecurity         OBJECT IDENTIFIER ::= { snMacSecurity 2 }

--
-- Port MAC Security Table
--

snPortMacSecurityTable OBJECT-TYPE
    SYNTAX     SEQUENCE OF PortMacSecurityEntry
    ACCESS     not-accessible
    STATUS     mandatory
    DESCRIPTION
            "Status of port MAC security on the device's interfaces."
    ::= { snPortMacSecurity 1 }

snPortMacSecurityEntry OBJECT-TYPE
    SYNTAX     PortMacSecurityEntry
    ACCESS     not-accessible
    STATUS     mandatory
    DESCRIPTION
            "An entry in the snPortMacSecurityTable"
    INDEX      { snPortMacSecurityIfIndex,
                     snPortMacSecurityResource,
                     snPortMacSecurityQueryIndex
                  }
    ::= { snPortMacSecurityTable 1 }

PortMacSecurityEntry ::= SEQUENCE {
    snPortMacSecurityIfIndex                    Unsigned32,
    snPortMacSecurityResource                 INTEGER,
    snPortMacSecurityQueryIndex              Unsigned32,
    snPortMacSecurityMAC                       MacAddress,
    snPortMacSecurityAgeLeft                  Unsigned32,
    snPortMacSecurityShutdownStatus       INTEGER,
    snPortMacSecurityShutdownTimeLeft   Unsigned32,
    snPortMacSecurityVlanId                    Unsigned32
}

snPortMacSecurityIfIndex     OBJECT-TYPE
    SYNTAX     Unsigned32
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "ifIndex value of the local Ethernet interface on 
            which MAC security is configured."
    ::= {snPortMacSecurityEntry 1}

snPortMacSecurityResource OBJECT-TYPE
    SYNTAX     INTEGER { local(1), shared(2) }
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "The MAC address was secured using local or shared resources."
    ::= {snPortMacSecurityEntry 2}

snPortMacSecurityQueryIndex     OBJECT-TYPE
    SYNTAX     Unsigned32
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "Entry index within the given resource of local Ethernet interface on 
            which MAC security is configured."
    ::= {snPortMacSecurityEntry 3}

snPortMacSecurityMAC OBJECT-TYPE
    SYNTAX     MacAddress
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "The secure MAC address for this interface."
    ::= {snPortMacSecurityEntry 4}

snPortMacSecurityAgeLeft OBJECT-TYPE
    SYNTAX     Unsigned32
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "The number of minutes the MAC address will remain secure
            before being aged out. 0 means no aging."
    ::= {snPortMacSecurityEntry 5}

snPortMacSecurityShutdownStatus OBJECT-TYPE
    SYNTAX     INTEGER { up(1), down(2) }
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "Interface up/down status."
    ::= {snPortMacSecurityEntry 6}

snPortMacSecurityShutdownTimeLeft OBJECT-TYPE
    SYNTAX     Unsigned32
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "If snPortMacSecurityShutdownStatus is up(1), this value will be 0.
            If snPortMacSecurityShutdownStatus is down(2), this gives
            the number of seconds before this interface is enabled again.
            In the later case, 0 means interface is permanently down."
    ::= {snPortMacSecurityEntry 7}

snPortMacSecurityVlanId OBJECT-TYPE
    SYNTAX     Unsigned32 (1..65535)
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "The vlan membership of this interface."
    ::= {snPortMacSecurityEntry 8}


--
-- Port MAC Security Module Statistics Table
--

snPortMacSecurityModuleStatTable OBJECT-TYPE
    SYNTAX     SEQUENCE OF PortMacSecurityModuleStatEntry
    ACCESS     not-accessible
    STATUS     mandatory
    DESCRIPTION
            "Port MAC security statistics on each module."
    ::= { snPortMacSecurity 2 }

snPortMacSecurityModuleStatEntry OBJECT-TYPE
    SYNTAX     PortMacSecurityModuleStatEntry 
    ACCESS     not-accessible
    STATUS     mandatory
    DESCRIPTION
            "An entry in the snPortMacSecurityModuleStatTable"
    INDEX      { snPortMacSecurityModuleStatSlotNum }
    ::= { snPortMacSecurityModuleStatTable 1 }

PortMacSecurityModuleStatEntry ::= SEQUENCE {
    snPortMacSecurityModuleStatSlotNum                                  INTEGER,
    snPortMacSecurityModuleStatTotalSecurityPorts               Unsigned32,
    snPortMacSecurityModuleStatTotalMACs                                Unsigned32,
    snPortMacSecurityModuleStatViolationCounts                  Unsigned32,
    snPortMacSecurityModuleStatTotalShutdownPorts               Unsigned32
}

snPortMacSecurityModuleStatSlotNum              OBJECT-TYPE
    SYNTAX     INTEGER    
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "The slot number of the port security device module."
    ::= {snPortMacSecurityModuleStatEntry 1}

snPortMacSecurityModuleStatTotalSecurityPorts     OBJECT-TYPE
    SYNTAX     Unsigned32
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "The totol number of Ethernet interfaces on which MAC security is configured in this module."
    ::= {snPortMacSecurityModuleStatEntry 2}

snPortMacSecurityModuleStatTotalMACs     OBJECT-TYPE
    SYNTAX     Unsigned32
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "The totol number of port MAC security MAC addresses are learned or configured in this module."
    ::= {snPortMacSecurityModuleStatEntry 3}

snPortMacSecurityModuleStatViolationCounts     OBJECT-TYPE
    SYNTAX     Unsigned32
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "The totol number of counts of violation are collected in this module."
    ::= {snPortMacSecurityModuleStatEntry 4}

snPortMacSecurityModuleStatTotalShutdownPorts     OBJECT-TYPE
    SYNTAX     Unsigned32
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "The totol number of Ethernet interfaces are shutted down due to security violation in this module."
    ::= {snPortMacSecurityModuleStatEntry 5}

--
-- Port MAC Security Interface Table
--

snPortMacSecurityIntfContentTable OBJECT-TYPE
    SYNTAX     SEQUENCE OF PortMacSecurityIntfContentEntry
    ACCESS     not-accessible
    STATUS     mandatory
    DESCRIPTION
            "Port MAC security statistics on each Ethernet Interface."
    ::= { snPortMacSecurity 3 }

snPortMacSecurityIntfContentEntry OBJECT-TYPE
    SYNTAX     PortMacSecurityIntfContentEntry 
    ACCESS     not-accessible
    STATUS     mandatory
    DESCRIPTION
            "An entry in the snPortMacSecurityIntfContentTable"
    INDEX      { snPortMacSecurityIntfContentIfIndex }
    ::= { snPortMacSecurityIntfContentTable 1 }

PortMacSecurityIntfContentEntry ::= SEQUENCE {
    snPortMacSecurityIntfContentIfIndex                                 InterfaceIndex,
    snPortMacSecurityIntfContentSecurity                                INTEGER,
    snPortMacSecurityIntfContentViolationType                   INTEGER,
    snPortMacSecurityIntfContentShutdownTime                    Unsigned32,
    snPortMacSecurityIntfContentShutdownTimeLeft                Unsigned32,
    snPortMacSecurityIntfContentAgeOutTime                              Unsigned32,
    snPortMacSecurityIntfContentMaxLockedMacAllowed             Unsigned32,
    snPortMacSecurityIntfContentTotalMACs                               Unsigned32,
    snPortMacSecurityIntfContentViolationCounts                 Unsigned32
}

snPortMacSecurityIntfContentIfIndex OBJECT-TYPE
    SYNTAX  InterfaceIndex
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
        "In order to identify a particular interface, this
                object shall identify the instance of the ifIndex
                object, defined in RFC 2863."
        ::= { snPortMacSecurityIntfContentEntry 1 }

snPortMacSecurityIntfContentSecurity OBJECT-TYPE
    SYNTAX     INTEGER { disable(0), enable(1) }
    ACCESS     read-write
    STATUS     mandatory
    DESCRIPTION
            "Port security for this interface can be either disabled or enabled."
    ::= {snPortMacSecurityIntfContentEntry 2}

snPortMacSecurityIntfContentViolationType OBJECT-TYPE
    SYNTAX     INTEGER { shutdown(0), restrict(1) }
    ACCESS     read-write
    STATUS     mandatory
    DESCRIPTION
            "Port security violation type for this interface is shutdown or restrict."
    ::= {snPortMacSecurityIntfContentEntry 3}

snPortMacSecurityIntfContentShutdownTime OBJECT-TYPE
    SYNTAX     Unsigned32 (0..1440)
    ACCESS     read-write
    STATUS     mandatory
    DESCRIPTION
            "If snPortMacSecurityIntfContentViolationType is shutdown(1),
                        this value gives the number of seconds this interface is shut down when violation occurs.
            In the shutdown(1) case, 0 means interface is permanently down.
            If snPortMacSecurityIntfContentViolationType is restrict(2), this value will be always 0."
    ::= {snPortMacSecurityIntfContentEntry 4}

snPortMacSecurityIntfContentShutdownTimeLeft OBJECT-TYPE
    SYNTAX     Unsigned32
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "If snPortMacSecurityIntfContentViolationType is shutdown(1), 
            whether this interface has been shut down due to a security violation 
            and the value gives the number of seconds before this interface is enabled again.
            If snPortMacSecurityIntfContentViolationType is restrict(2), this value will be always 0."
    ::= {snPortMacSecurityIntfContentEntry 5}

snPortMacSecurityIntfContentAgeOutTime OBJECT-TYPE
    SYNTAX     Unsigned32 (0..1440)
    ACCESS     read-write
    STATUS     mandatory
    DESCRIPTION
            "The amount of time, in minutes, MAC addresses learned on this interface will remain secure.
            It allows configurable values 0-1440.  0 means no aging permanently."
    ::= {snPortMacSecurityIntfContentEntry 6}

snPortMacSecurityIntfContentMaxLockedMacAllowed OBJECT-TYPE
    SYNTAX     Unsigned32
    ACCESS     read-write
    STATUS     mandatory
    DESCRIPTION
            "Maximum number of security MAC addresses can be locked to this interface."
    ::= {snPortMacSecurityIntfContentEntry 7}

snPortMacSecurityIntfContentTotalMACs     OBJECT-TYPE
    SYNTAX     Unsigned32
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "The totol number of port MAC security MAC addresses are locked in this interface."
    ::= {snPortMacSecurityIntfContentEntry 8}

snPortMacSecurityIntfContentViolationCounts     OBJECT-TYPE
    SYNTAX     Unsigned32
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "The totol number of counts of violation are collected in this interface."
    ::= {snPortMacSecurityIntfContentEntry 9}

--
-- Port MAC Security Interface MAC Table
--

snPortMacSecurityIntfMacTable OBJECT-TYPE
    SYNTAX     SEQUENCE OF PortMacSecurityIntfMacEntry
    ACCESS     not-accessible
    STATUS     mandatory
    DESCRIPTION
            "Status of port MAC security on the device's interfaces."
    ::= { snPortMacSecurity 4 }

snPortMacSecurityIntfMacEntry OBJECT-TYPE
    SYNTAX     PortMacSecurityIntfMacEntry
    ACCESS     not-accessible
    STATUS     mandatory
    DESCRIPTION
            "An entry in the snPortMacSecurityIntfMacTable"
    INDEX      { snPortMacSecurityIntfMacIfIndex,
                        snPortMacSecurityIntfMacAddress 
                        }
    ::= { snPortMacSecurityIntfMacTable 1 }

PortMacSecurityIntfMacEntry ::= SEQUENCE {
    snPortMacSecurityIntfMacIfIndex                     INTEGER,
    snPortMacSecurityIntfMacAddress                     MacAddress,
    snPortMacSecurityIntfMacVlanId                      INTEGER,
        snPortMacSecurityIntfMacRowStatus               INTEGER
}

snPortMacSecurityIntfMacIfIndex     OBJECT-TYPE
    SYNTAX     INTEGER
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "ifIndex value of the local Ethernet interface on 
            which MAC security is configured."
    ::= {snPortMacSecurityIntfMacEntry 1}

snPortMacSecurityIntfMacAddress OBJECT-TYPE
    SYNTAX     MacAddress
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "The secure MAC address for this local Ethernet interface on 
            which the secure MAC Address is configured and/or learned.  
            The maximum number of the secure MAC Addresses is restricted 
            by the snPortMacSecurityIntfContentMaxLockedMacAllowed."
    ::= {snPortMacSecurityIntfMacEntry 2}

snPortMacSecurityIntfMacVlanId OBJECT-TYPE
    SYNTAX     INTEGER (1..4095)
    ACCESS     read-write
    STATUS     mandatory
    DESCRIPTION
            "The vlan membership of this interface, zero means don't care."
    ::= {snPortMacSecurityIntfMacEntry 3}

snPortMacSecurityIntfMacRowStatus OBJECT-TYPE
        SYNTAX  INTEGER {
                other(1),
                valid(2),
                delete(3),
                create(4)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "This object is used to create and
                delete row in the table and control
                if they are used. The values
                that can be written are:
                  delete(3)...deletes the row
                  create(4)...creates a new row

                If the row exists, then a SET with
                value of create(4) returns error
                'badValue'. Deleted rows go away
                immediately. The following values
                can be returned on reads:
                  noSuch(0)...no such row
                  other(1)....some other case
                  valid(2)....the row exists and is valid"
    ::= {snPortMacSecurityIntfMacEntry 4}


--
-- Port MAC Security Autosave MAC Table
--

snPortMacSecurityAutosaveMacTable OBJECT-TYPE
    SYNTAX     SEQUENCE OF PortMacSecurityAutosaveMacEntry
    ACCESS     not-accessible
    STATUS     mandatory
    DESCRIPTION
            "Autosave MAC addresses of port MAC security on the device's interfaces."
    ::= { snPortMacSecurity 5 }

snPortMacSecurityAutosaveMacEntry OBJECT-TYPE
    SYNTAX     PortMacSecurityAutosaveMacEntry
    ACCESS     not-accessible
    STATUS     mandatory
    DESCRIPTION
            "An entry in the snPortMacSecurityAutosaveMacTable"
    INDEX      { snPortMacSecurityAutosaveMacIfIndex,
                                 snPortMacSecurityAutosaveMacResource,
                                 snPortMacSecurityAutosaveMacQueryIndex
                        }
    ::= { snPortMacSecurityAutosaveMacTable 1 }

PortMacSecurityAutosaveMacEntry ::= SEQUENCE {
    snPortMacSecurityAutosaveMacIfIndex         INTEGER,
        snPortMacSecurityAutosaveMacResource    INTEGER,
        snPortMacSecurityAutosaveMacQueryIndex  Unsigned32,
        snPortMacSecurityAutosaveMacAddress             MacAddress
}

snPortMacSecurityAutosaveMacIfIndex     OBJECT-TYPE
    SYNTAX     INTEGER
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "ifIndex value of the local Ethernet interface on 
            which MAC security is configured."
    ::= {snPortMacSecurityAutosaveMacEntry 1}

snPortMacSecurityAutosaveMacResource OBJECT-TYPE
    SYNTAX     INTEGER { local(1), shared(2) }
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "The MAC address was autosaved using local or shared resources."
    ::= {snPortMacSecurityAutosaveMacEntry 2}

snPortMacSecurityAutosaveMacQueryIndex     OBJECT-TYPE
    SYNTAX     Unsigned32
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "Entry index within the given resource of local Ethernet interface on 
            which MAC security is autosaved."
    ::= {snPortMacSecurityAutosaveMacEntry 3}

snPortMacSecurityAutosaveMacAddress OBJECT-TYPE
    SYNTAX     MacAddress
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
            "The secure MAC address for this local Ethernet interface on 
            which the secure MAC Address is autosaved."
    ::= {snPortMacSecurityAutosaveMacEntry 4}



-- Port MAC Global Security MIB Group 

snPortMacGlobalSecurityFeature OBJECT-TYPE
    SYNTAX     INTEGER { disable(0), enable(1) }
    ACCESS     read-write
    STATUS     mandatory
    DESCRIPTION
            "Port security for this device can be either disabled or enabled."
        ::= { snPortMacGlobalSecurity 1 }

snPortMacGlobalSecurityAgeOutTime OBJECT-TYPE
    SYNTAX     Unsigned32 (0..1440)
    ACCESS     read-write
    STATUS     mandatory
    DESCRIPTION
             "The amount of time, in minutes, MAC addresses learned on this device will remain secure.
            It allows configurable values in the range of 0-1440.  0 means no aging permanently."
        ::= { snPortMacGlobalSecurity 2 }

snPortMacGlobalSecurityAutosave OBJECT-TYPE
    SYNTAX     Unsigned32
    ACCESS     read-write
    STATUS     mandatory
    DESCRIPTION
            "The port security autosave value for this device. It allows
    configurable values 0 and also in the range of 15-1440. The value 0 means no autosave."
        ::= { snPortMacGlobalSecurity 3 }


--
-- Port Monitor Table
--

snPortMonitorTable OBJECT-TYPE
    SYNTAX     SEQUENCE OF PortMonitorEntry
    ACCESS     not-accessible
    STATUS     mandatory
    DESCRIPTION
            "Status of port monitoring on the device's interfaces."
    ::= { snPortMonitor 1 }

snPortMonitorEntry OBJECT-TYPE
    SYNTAX     PortMonitorEntry
    ACCESS     not-accessible
    STATUS     mandatory
    DESCRIPTION
            "An entry in the snPortMonitorTable"
    INDEX      { snPortMonitorIfIndex }
    ::= { snPortMonitorTable 1 }

PortMonitorEntry ::= SEQUENCE {
    snPortMonitorIfIndex                    InterfaceIndex,
    snPortMonitorMirrorList                 DisplayString
}

snPortMonitorIfIndex OBJECT-TYPE
    SYNTAX     InterfaceIndex
    ACCESS     not-accessible
    STATUS     mandatory
    DESCRIPTION
            "ifIndex value of the local interface on which
            monitoring is configuerd."
    ::= { snPortMonitorEntry 1 }

snPortMonitorMirrorList OBJECT-TYPE
     SYNTAX  DisplayString
     ACCESS  read-write
     STATUS  mandatory
     DESCRIPTION
             "Lists the monitoring configuration of this port.
             The value is a space delimited sequence of ifIndex of mirror port
             and monitor mode. The values for mode can be -
             0 -  off, 1 - input, 2 - output, 3 - both
             Eg. '65 2 66 1' means send the output traffic to port 2/1 and
             input traffic to port 2/2.
              To turn off a mirror use monitor mode of 0 (off) in the list."
     ::= { snPortMonitorEntry 2 }

END